问题1)
我想将所有结构和数据的表克隆到同一服务器上的另一个数据库
我想知道如何使用MYSQLi
复制它 CREATE TABLE `insurance`.`GD14062013` ( `URN` varchar( 30 ) NOT NULL ,
`Title` varchar( 30 ) NOT NULL ,
`FirstName` varchar( 30 ) NOT NULL ,
`LastName` varchar( 30 ) NOT NULL ,
`ADD` varchar( 500 ) NOT NULL ,
`SUB` varchar( 100 ) NOT NULL ,
`STATE` varchar( 100 ) NOT NULL ,
`POSTCODE` varchar( 30 ) NOT NULL ,
`DPID` varchar( 30 ) NOT NULL ,
`LanLine` varchar( 30 ) NOT NULL ,
`Mobile` varchar( 30 ) NOT NULL ,
`DUP` varchar( 11 ) NOT NULL ,
KEY `LanLine` ( `LanLine` , `Mobile` ) ) ENGINE = InnoDB DEFAULT CHARSET = latin1;
SET SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
INSERT INTO `insurance`.`GD14062013` SELECT * FROM `GDMASTER`.`GD14062013`;
问题2) 在我不再需要它之后,我想要删除aka alter columns。
THIS WORKS
$query = "ALTER TABLE `$table` ADD `primary` VARCHAR( 10 ) NOT NULL";
$mysqli->query($query);
$query = "ALTER TABLE `$table` ADD `alternitive` VARCHAR( 10 ) NOT NULL";
$mysqli->query($query);
This Does NOT
$query = "ALTER TABLE `$table` DROP `primary` VARCHAR( 10 ) NOT NULL";
$mysqli->query($query);
$query = "ALTER TABLE `$table` DROP `alternitive` VARCHAR( 10 ) NOT NULL";
$mysqli->query($query);
答案 0 :(得分:0)
尝试:
$query = "ALTER TABLE `$table` DROP `primary`";
$mysqli->query($query);
$query = "ALTER TABLE `$table` DROP `alternitive`";
$mysqli->query($query);
删除时无需传递列数据类型。
MySQL ALTER TABLE specyfication:
ALTER TABLE tbl_name
DROP [COLUMN] col_name
答案 1 :(得分:0)
不应该是
$query = "ALTER TABLE `$table` DROP COLUMN `primary`";
$mysqli->query($query);
$query = "ALTER TABLE `$table` DROP COLUMN `alternitive`";
$mysqli->query($query);
记下DROP COLUMN。表中还有其他部分可以删除以便更改。即COLUMN
,INDEX
,PRIMARY KEY
和FOREIGN KEY
。
请参阅altering tables上的MySQL手册。