请教一个表有两个主键时,添加外键约束的问题? 在mysql中我为一个表T1定义了两个主键K1,K2,然后在另外一个表T2中设置外键约束,对于T2中的属性A,它的外键约束就对应着T1的主键,但是这时候,T1的主键有两个这时候我该怎么添加外键约束呢?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CREATE TABLE `testkey` ( `a` int(11) NOT NULL DEFAULT '0', `b` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`a`,`b`)) ENGINE=InnoDB DEFAULT CHARSET=latin1 |CREATE TABLE `testforeign` ( `c` int(11) DEFAULT NULL, `d` int(11) DEFAULT NULL, KEY `cd` (`c`,`d`), CONSTRAINT `cd` FOREIGN KEY (`c`, `d`) REFERENCES `testkey` (`a`, `b`)) ENGINE=InnoDB DEFAULT CHARSET=latin1 | 一一对应吧,不可只对ying主表的一列,除非你加上unique限制,如果主键两个列,你在子表插入式必须两个列都要和父对应 shell命里面里面 删除二个月前备份的数据? 初次接触数据库,请高手指教! 触发器问题 重新安装mysql原来数据库的只剩下了.frm的问,怎么恢复的数据 MYSQL按条件成立的个数进行排序 sql问题--精确匹配 一个查询的问题:过滤相同记条,并计算此记录条数 问个巨弱的问题:怎么获得系统时间 怎样在NT下以SERVICE方式启动MYSQL的时候能够带参数,在哪个文件里配置? sphinx ,myisam mysql 存储函数 查询两个字段 并用"-" 连接起来
`a` int(11) NOT NULL DEFAULT '0',
`b` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`a`,`b`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |CREATE TABLE `testforeign` (
`c` int(11) DEFAULT NULL,
`d` int(11) DEFAULT NULL,
KEY `cd` (`c`,`d`),
CONSTRAINT `cd` FOREIGN KEY (`c`, `d`) REFERENCES `testkey` (`a`, `b`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |