表 wp_users wordpress 具有以下语法:
CREATE TABLE `wp_users` (
`ID` bigint(20) unsigned NOT NULL auto_increment,
`user_login` varchar(60) NOT NULL default '',
`user_pass` varchar(64) NOT NULL default '',
`user_nicename` varchar(50) NOT NULL default '',
`user_email` varchar(100) NOT NULL default '',
`user_url` varchar(100) NOT NULL default '',
`user_registered` datetime NOT NULL default '0000-00-00 00: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 DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;
我想集成一个已经为 wordpress 实现的系统,但是我在连接表 wp_users 时遇到了外键问题。
我有这张桌子:
CREATE TABLE attach (
attach_id int unsigned NOT NULL auto_increment,
email varchar(60) NOT NULL default '',
PRIMARY KEY (attach_id),
FOREIGN KEY (email) REFERENCES wp_users(user_login_key)
ON UPDATE CASCADE ON DELETE CASCADE
)Engine=INNODB;
我想从 wp_users 连接到 user_email,但是 user_login 和 user_email 将是相同的。由于其他表中的其他情况,完全不可能将 attach_id 定义为 wp_users 到 ID 的 FK。
当我提交时给出错误#1005