SQL primary-key
SQL主键 一列或多列称为主键(PK),它唯一地标识表中的每一行。 如果要创建主键,则在创建或修改表时应定义P…
SQL主键
一列或多列称为主键(PK),它唯一地标识表中的每一行。
如果要创建主键,则在创建或修改表时应定义PRIMARY KEY约束。
当多列用作主键时,称为复合主键。
在设计组合主键时,应使用尽可能少的列。这对存储和性能都有好处,用于主键的列越多,所需的存储空间就越大。
就性能而言,更少的数据意味着数据库可以更快地处理。
要记住的主键要点:
- 主键可增强表的实体完整性。
- 主键始终具有唯一数据。
- 主键长度不能超过900个字节。
- 主键不能为空值。
- 主键不能有重复的值。
- 一个表只能包含一个主键约束。
当我们为表指定主键约束时,数据库引擎会自动为主键列创建唯一索引。
主键的主要优点:
这种独特性的主要优点是我们可以快速访问。
在oracle中,主键不允许包含超过32列。
一列的SQL主键:
创建“ students”表时,以下SQL命令在“ S_Id”列上创建PRIMARY KEY。
MySQL:
SQL Server,Oracle,MS Access:
CREATE TABLE students ( S_Id int NOT NULL PRIMARY KEY, LastName varchar (255) NOT NULL, FirstName varchar (255), Address varchar (255), City varchar (255), )
多列的SQL主键:
MySQL,SQL Server,Oracle,MS Access:
CREATE TABLE students ( S_Id int NOT NULL, LastName varchar (255) NOT NULL, FirstName varchar (255), Address varchar (255), City varchar (255), CONSTRAINT pk_StudentID PRIMARY KEY (S_Id, LastName) )
注意:您应该注意,在上面的示例中,只有一个PRIMARY KEY(pk_StudentID)。但是,它由两列(S_Id和LastName)组成。
ALTER TABLE上的SQL主键
如果已经创建了表,并且要在“ S_Id”列上创建PRIMARY KEY约束,则应使用以下SQL:
一列的主键:
ALTER TABLE students ADD PRIMARY KEY (S_Id)
多列上的主键:
ALTER TABLE students ADD CONSTRAINT pk_StudentID PRIMARY KEY (S_Id,LastName)
当您使用ALTER TABLE语句添加主键时,主键列中不得包含NULL值(首次创建表时)。
如何删除主键约束?
如果要删除(删除)主键约束,则应使用以下语法:
MySQL:
ALTER TABLE students DROP PRIMARY KEY
SQL Server / Oracle / MS Access:
ALTER TABLE students DROP CONSTRAINT pk_StudentID
类别:MySQL、
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!