Mysql查询添加一个表并从另一个表中插入表数据?

时间:2014-07-23 14:22:57

标签: mysql

我正在尝试创建一个表(夜间例程),然后从另一个表中插入表数据。现在我知道桌子已经存在了。我不确定我应该在这里使用的语法。

[Err] 1050 - 表'testgiver.safewp_users'已存在

DROP TABLE
IF EXISTS testgiver.safewp_users;
CREATE TABLE `testgiver.safewp_users` (
  `ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `user_login` varchar(60) NOT NULL DEFAULT '',
  `user_pass` varchar(64) DEFAULT '',
  `user_nicename` varchar(50) NOT NULL DEFAULT '',
  `user_email` varchar(100) NOT NULL DEFAULT '',
  `user_url` varchar(100) DEFAULT '',
  `user_registered` datetime NOT NULL DEFAULT '2014-01-01 10:00:00',
  `user_activation_key` varchar(60) NOT NULL DEFAULT '',
  `user_status` int(11) NOT NULL DEFAULT '0',
  `display_name` varchar(250) NOT NULL DEFAULT '',
  PRIMARY KEY (`ID`),
  KEY `user_login_key` (`user_login`),
  KEY `user_nicename` (`user_nicename`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
INSERT INTO safewp_users (`user_login`, `user_nicename`, `user_email`, `display_name`)
    SELECT
    ldap_full.uid,
    ldap_full.sn,
    ldap_full.mail,
    ldap_full.cn
FROM
    ldap_full

2 个答案:

答案 0 :(得分:2)

这看起来像一个简单的拼写错误。

CREATE TABLE `testgiver.safewp_users`

应该阅读

CREATE TABLE `testgiver`.`safewp_users`

否则,您每次都尝试创建一个名为'testgiver.safewp_users'的表。

答案 1 :(得分:0)

删除create table语句中的引号。引号导致您尝试在默认架构中创建名为testgiver.safewp_users的表,而不是在testgiver架构中创建名为safewp_users的表。