主键约束

主键约束

目录导航

概述

以下脚本均以SQLServer数据库为准

主键约束在表中定义一个主键来唯一确定表中一行数据的标识符.

(非空,惟一)

例如:

alter table member

add

constraint PK_member_member_no primary key clustered (member_no)

主键列的数据类型不限,但此列必须是唯一并且非空。

如该表中已有主键为1000的行,则不能再添加主键为1000。

人工或程序不好控制的时候,也可以设置主键列为自动增长列。

自增列简述

自增列的类型应为int或bigint型。可以设置起始和每次递增数。

如:create table [table1]

(

[id] [int] identity(1,1)...

)

这样每次插入则不需要为主键设置参数,数据库会根据设置的递增条件,自动给出主键值。

如以上代码所示,则第一次插入后主键为1,第二次为2,依次递增。

需要注意的是:如果这个表中有10条数据,主键为1-10不间断的数字,那要删除第十条数据,

继续插入的话,id则会变成11,而不是10。通俗的说就是主键使用过一次将不会再次使用。

主键的作用

主键是一个表中能标识唯一行的标志(也有其他方法表示唯一行,如唯一列)。

主键主要用在查询单调数据,修改单调数据和删除单调数据上。

一般做程序的时候,都将表的主键设置为int型的可自增的列,这样在编程的时候,很容易区分数据。

删除:delete from [table] where id=1;

修改:update [table] set col1='test' where id=1;

查询:select * from [table] where id=1;

相关百科
返回顶部
产品求购 求购