![](/img/trans.png)
[英]Rename DB and Copy DB Structure to new DB - MySQL & PHP or Ruby
[英]mysql use schema from local db project to create db structure upon new db creation in php
我一直在本地主机上的一个项目上工作,我想使用本地应用程序在实时站点上使用的数据库结构。 我已经完成了一个mysql dump,并尝试将其添加到我的pdo db创建脚本(在实时站点上),但是创建db时它们没有结构。 我不确定自己在做什么错,并且无法找到任何示例。 我不太确定我错过了什么指针会很棒。 提前致谢
代码前
$host="localhost";
$root="root";
$root_password="root";
$user='newuser';
$pass='newpass';
$db= 'companyid' . $companyid;
try {
$dbh = new PDO("mysql:host=$host", $root, $root_password);
$dbh->exec("CREATE DATABASE `$db`;
CREATE USER '$user'@'localhost' IDENTIFIED BY '$pass';
GRANT ALL ON `$db`.* TO '$user'@'localhost';
FLUSH PRIVILEGES;
CREATE TABLE IF NOT EXISTS `address` (
`address` varchar(50) COLLATE latin1_general_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
-- --------------------------------------------------------
--
-- Table structure for table `checkpics`
--
CREATE TABLE IF NOT EXISTS `checkpics` (
`image` varchar(120) COLLATE latin1_general_ci NOT NULL,
`amount` decimal(10,0) NOT NULL,
`date` date NOT NULL,
`photosmall` varchar(64) COLLATE latin1_general_ci NOT NULL,
`photobig` longblob NOT NULL,
`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`customerid` int(10) NOT NULL,
`checknumber` int(10) NOT NULL,
`checkamount` varchar(10) COLLATE latin1_general_ci NOT NULL,
`datepaid` varchar(10) COLLATE latin1_general_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
-- --------------------------------------------------------
--
-- Table structure for table `CityStateZip`
--
CREATE TABLE IF NOT EXISTS `CityStateZip` (
`city` varchar(30) COLLATE latin1_general_ci NOT NULL,
`state` varchar(2) COLLATE latin1_general_ci NOT NULL,
`zip` varchar(10) COLLATE latin1_general_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;")
or die(print_r($dbh->errorInfo(), true));
} catch (PDOException $e) {
die("DB ERROR: ". $e->getMessage());
}
好的,我知道了问题所在。 创建多个表时,必须运行单独的命令或使用mysqli multi query命令,并通过;分隔每个实例;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.