CREATE TABLE t_dept(
deptno INT,
dname VARCHAR(20),
loc VARCHAR(40),
CONSTRAINT pk_dname PRIMARY KEY(dname)
);
CONSTRAINT 没影响到 select *语句,select*还是原来的名字
7 个解决方案
#1
约束加名字,也可以不加名字,如果不加名字,系统会用一个默认的名字来创建约束。
也就是说,不管你加不加名字,都是有一个约束的名字的,之后,你可以用这个约束的名字,来吧约束删除。
比如:
alter table xxx
drop constraint 约束名称
也就是说,不管你加不加名字,都是有一个约束的名字的,之后,你可以用这个约束的名字,来吧约束删除。
比如:
alter table xxx
drop constraint 约束名称
#2
这样创建表,这样删除,咋报错呢。
CREATE TABLE t_dept(
deptno INT,
dname VARCHAR(20),
loc VARCHAR(40),
CONSTRAINT pk_dname_deptno PRIMARY KEY (deptno, dname)
);
#3
#4
把当中的分号去掉试试
#5
把当中的分号去掉试试
#6
约束名称 是一个约束条件的名称,不是列的名称。
#7
把当中的分号去掉试试
不好意思,刚才试了一下,mysql如果要删除这个主键约束,语法和其他数据库都不一样,的这样:
ALTER TABLE t_dept
DROP PRIMARY KEY
#1
约束加名字,也可以不加名字,如果不加名字,系统会用一个默认的名字来创建约束。
也就是说,不管你加不加名字,都是有一个约束的名字的,之后,你可以用这个约束的名字,来吧约束删除。
比如:
alter table xxx
drop constraint 约束名称
也就是说,不管你加不加名字,都是有一个约束的名字的,之后,你可以用这个约束的名字,来吧约束删除。
比如:
alter table xxx
drop constraint 约束名称
#2
alter table xxx
drop constraint 约束名称
这样创建表,这样删除,咋报错呢。
CREATE TABLE t_dept(
deptno INT,
dname VARCHAR(20),
loc VARCHAR(40),
CONSTRAINT pk_dname_deptno PRIMARY KEY (deptno, dname)
);
#3
alter table xxx
drop constraint 约束名称
#4
alter table xxx
drop constraint 约束名称
把当中的分号去掉试试
#5
把当中的分号去掉试试
#6
约束名称 是一个约束条件的名称,不是列的名称。
#7
把当中的分号去掉试试
不好意思,刚才试了一下,mysql如果要删除这个主键约束,语法和其他数据库都不一样,的这样:
ALTER TABLE t_dept
DROP PRIMARY KEY