sql怎么设置主键

sql怎么设置主键,第1张

1主键语法
①创建时:create table sc (
studentno int,
courseid int,
score int,
primary key (studentno) );
②修改时:ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名);
前提是原先没有设置主键。
2外键语法
①创建时:create table sc (
studentno int,
courseid int,
score int,
foreign key (courseid) );
②修改时:
ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[约束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列] ;
3使用组合主键
如果一列不能唯一区分一个表里的记录时,可以考虑多个列组合起来达到区分表记录的唯一性,形式
①创建时:create table sc (
studentno int,
courseid int,
score int,
primary key (studentno,courseid) );
②修改时:alter table tb_name add primary key (字段1,字段2,字段3);
前提是原来表中没有设置主键,若原先已有主键则会报错。

准确的说是设置一个由两个字段组成的主键,方法如下:
1、打开一个数据库;
2、在设计视图打开一个数据表;
3、采用拖动的方法,或者按下ctrl键再点击两个字段;
4、点击设计选项卡上主键按钮即可。

CREATE TABLE `products_description` (
 `products_id` int(11) NOT NULL,
 `language_id` int(11) NOT NULL default
'1',
 `products_name` varchar(64) NOT NULL default
'',
 `products_description` text,
 `products_short_description` text,
 `products_url` varchar(255) default NULL,
 `products_viewed` int(5) default '0',
 PRIMARY KEY (`products_id`,`language_id`),
 KEY `products_name` (`products_name`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

指定primary key 时用 PRIMARY KEY (`products_id`,`language_id`),这样就能指定联合主键了


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

原文地址: https://outofmemory.cn/yw/13377264.html

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

发表评论

登录后才能评论

评论列表(0条)

保存