MySQL 是一种关系型数据库管理系统,它提供了创建主键、外键以及复合主键的功能。下面是关于这些功能的完整攻略:
创建主键
主键是一列或一组列,用于唯一标识一条记录。在 MySQL 中,可以使用以下语句创建主键:
ALTER TABLE `table_name` ADD PRIMARY KEY (`column_name`);
其中,table_name
是要创建主键的表名;column_name
是要创建主键的列名。如果要在多个列上创建主键,则可以使用以下语句:
ALTER TABLE `table_name` ADD PRIMARY KEY (`column1_name`, `column2_name`);
示例:
假设我们有一个表叫做 employees
,其中有一个名为 id
的列用来唯一标识每个员工。我们可以使用以下语句创建一个主键:
ALTER TABLE `employees` ADD PRIMARY KEY (`id`);
创建外键
在关系型数据库中,外键用来连接两个表。在 MySQL 中,可以使用以下语句创建外键:
ALTER TABLE `table_name`
ADD CONSTRAINT `fk_name`
FOREIGN KEY (`column_name`)
REFERENCES `foreign_table_name` (`foreign_column_name`);
其中,table_name
是要添加外键的表名;column_name
是包含外键的列名;fk_name
是外键的名称;foreign_table_name
是关联表的名称;foreign_column_name
是关联列的名称。
示例:
假设我们有一个表叫做 employees
,其中有一个名为 dept_id
的列,它是一个外键,关联到名为 departments
的表的 id
列。我们可以使用以下语句创建外键:
ALTER TABLE `employees`
ADD CONSTRAINT `fk_dept_id`
FOREIGN KEY (`dept_id`)
REFERENCES `departments` (`id`);
创建复合主键
复合主键,顾名思义,是由多个列组成的主键。在 MySQL 中,可以使用以下语句创建复合主键:
ALTER TABLE `table_name` ADD PRIMARY KEY (`column1_name`, `column2_name`);
其中,table_name
是要创建复合主键的表名;column1_name
和 column2_name
是要包含在主键中的列名。
示例:
假设我们有一个表叫做 orders
,其中每个订单由两个唯一标识符组成:order_id
和 customer_id
。我们可以使这两个列共同组成一个复合主键,以确保每个订单唯一:
ALTER TABLE `orders` ADD PRIMARY KEY (`order_id`, `customer_id`);
以上就是 MySQL 创建主键、外键和复合主键的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MySQL 创建主键,外键和复合主键的语句 - Python技术站