如何将表中的主键定义为两个唯一字段?
我的表中有几个列,我有两个键:ID和SOURCE。ID的值可以在列中出现两次,但ID +源的组合可以作为主键使用。
例如:
ID | SOURCE | TEXT
------------------
UNIQUE - 2312 | FB | BLA BLA
UNIQUE - 2312 | MU | BLA BLA
我正在使用MySQL数据库。我如何使两列的主键?
我正在从MySQL迁移到SQL Server2012,但遇到了麻烦。问题是我使用UNIQUE命令有几个表,并且我试图将它们转换为SQL Server语法等价的表,但是当我试图用相同的唯一字段名创建第二个表时,就会出现这个错误。我怎么才能修复它呢。
Msg 2714, Level 16, State 5, Line 1
There is already an object named 'Codigo' in the database.
Msg 1750, Level 16, State 0, Line 1
Could not create constraint. See prev
如果我在MySQL中有一个表示基类的表,并且我有一堆表示派生类中的字段的表,每个表都用一个外键引用基表,那么有没有办法让MySQL强制执行派生表和基表之间的一对一关系,或者这必须在代码中完成?
以下面的快速“n”脏模式为例,有没有办法让MySQL确保product_cd和product_dvd中的行不能共享同一个product_id?有没有一种更好的方法来设计模式,以允许数据库实施这种关系,或者根本不可能?
CREATE TABLE IF NOT EXISTS `product` (
`product_id` int(10) unsigned NOT NULL auto_increme