sql - Mysql:如何创建具有多个主键的表?

标签 sql mysql database-design primary-key data-modeling

我有这种情况:

MySQL - Newbie question: Which are the PK and the FK for these tables? (看看表格薪水)

如何创建具有多个主键的表?

create table salaries
(
  dep_id smallint auto_increment primary key, 
  emp_id smallint auto_increment primary key, 
  bla varchar(20)
);

如果我尝试上面的代码,我会收到一个错误。有什么想法吗?

最佳答案

一张表只能有一个主键。但是,主键可以包含多个列,例如

CREATE TABLE salaries (
    dep_id SMALLINT UNSIGNED NOT NULL,
    an_id SMALLINT UNSIGNED NOT NULL,
    bla VARCHAR(20),
    PRIMARY KEY (dep_id, an_id)
);

关于sql - Mysql:如何创建具有多个主键的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1590597/

相关文章:

php - Mysql - 关联表 - on 子句中的未知列

sql - 如何同时向2个表插入数据

java - 将Java连接到MySQL数据库

mysql - laravel 5 关系在两列上有很多

mysql - 用户媒体的数据库设计

SQL Server : IF EXISTS ; ELSE

c# - 如何在 C# 中将 System.Collection.IEnumerable 转换为 List<T>?

mysql - 从同一类别中选择多个产品?

php - 简单的数据库设计问题

database-design - 如何在事务数据库中存储已删除的行