如何在数据库表中建立复合主键(即多个字段同时作为

如何在数据库表中建立复合主键(即多个字段同时作为,第1张

(即多个字段同时作为主键)主键是数据库表的一个重要属性,建立主键可以避免表中存在完全相同的记录,也就是说主键在一张表中的记录值是唯一的。

建立主键有两种方法:一种是在数据库提供的GUI环境中建立,另一种是通过SQL语句执行建立,下面分别介绍。

1.在数据库提供的GUI环境中建立(以SQL7为例)。

输入表信息后按Ctrl键同时选中多行,然后点上面的主键按钮就行了。

2.通过SQL语句执行建立。又分两种,一是在建表语句中直接写,二是建表之后更改表结构。

在建表语句中直接写:

Create Table 表名 (字段名1 Int Not Null,

字段名2 nvarchar(13) Not Null Primary Key (字段名1, 字段名2),

字段名3…………

字段名N………… )

建表之后更改表结构:

CREATE TABLE 表名 (字段名1 Int Not Null,

字段名2 nvarchar(13) Not Null

字段名3…………

字段名N…………)

GO

ALTER TABLE 表名 WITH NOCHECK ADD

CONSTRAINT [PK_表名] PRIMARY KEY NONCLUSTERED

(

[字段名1],

[字段名2]

)

GO

例:

CREATE TABLE Student

(Son CHAR(12) PRIMARY KEY,

CREATE TABLE Course

(Con CHAR(4),

PRIMARY KEY (Con),

)

CREATE TABLE SC

(Sno CHAR(12),

Con CHAR(4),

PRIMARY KEY(Sno,Con),

FOREIGN KEY(Sno)REFERENCES Student(Sno),

FOREIGN KEY(Cno)REFERENCES Course(Cno))

方法一:创建表之后,alter table table_name add primary key(字段1,字段2)

方法二:CREATE TABLE 表名 (字段名1 Int Not Null, 字段名2 nvarchar(13) Not Null 字段名3………… 字段名N…………) GO ALTER TABLE 表名 WITH NOCHECK ADD CONSTRAINT [PK_表名] PRIMARY KEY NONCLUSTERED ( [字段名1], [字段名2] ) GO

方法三:建表后,右键-->设计,选中作为符合主键的列,选中之后右击-->设为主键

要看 B 表中的主键或唯一索引设置的什么

然后到A表中按照 主键或唯一索引 分组求 count(*) ,看看那些结果大于1

针对结果大于1的再进行去重删除处理


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6920240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存