- alter table tb_name add primary key (字段1,字段2,字段3);
1、首先创建一个数据表table_test:
create table mytable (
aa int,
bb char(8),
cc date,
primary key (aa,bb )
);
2、如果发现主键设置错了,应该是id是主键,但如今表里已经有好多数据了,不能删除表再重建了,仅仅能在这基础上改动表结构。
先删除主键
alter table table_test drop primary key;
然后再增加主键
alter table table_test add primary key(id);
注:在增加主键之前,必须先把反复的id删除掉。
【示例1】假设订房信息表(Orderinfo),没有创建主键,现在需要将Orderinfo表中的customerID和OrderID两列设置成主键。创建的语法如下:
“ALTER TABLE ORDERINFO
ADD CONSTRAINT pk_orderinfoPRIMARY KEY(customerID,OrderID);”
*通常情况下,当在修改表时要设置表中某个列的主键约束时,要确保设置成主键约束的列中值不能够有重复的,并且要保证是非空的。否则,是无非设置主键约束的。
删除主键约束
删除主键约束的方法语句如下:
“ALTER TABLE table_name
DROP PRIMARY KEY”
【示例2】删除客户信息表(customerinfo)中主键约束。代码如下:
“ALTER TABLE CUSTOMERINFO
DROP PRIMARY KEY”
*由于主键约束在一个表中只能有一个,因此不需要指定主键名就可以删除一个表中的主键约束。