请问,这样设置级联操作,为什么报错?
ALTER TABLE 客户表
ADD PRIMARY KEY(客户编号)
on update cascade
on delete cascade
添加客户表的主键,并设置级联操作,为什么报错呢?
[解决办法]
你可以查一下联机丛书上的例子和注意事项嘛。
[解决办法]
PRIMARY KEY?你1楼的是主键,3楼的是外键,
主键外键你要分清楚,找本基础的书看看吧。
[解决办法]
主键和外键的差异很大的!
[解决办法]
- SQL code
on update cascade on delete cascade 是定义在 从表上的非 主表。给你个案例create table a (id varchar(20) primary key,password varchar(20) not null) create table b (id int identity(1,1) primary key, name varchar(50) not null, userId varchar(20), foreign key (userId) references a(id) on delete cascade ) -- 表B创建了外码userId 对应A的主码ID,声明了级联删除 测试数据: insert a values ('11','aaa') insert a values('23','aaa') insert b values('da','11') insert b values('das','11') insert b values('ww','23') --删除A表内id为'11'的数据,发现B表内userId 为“11”也被数据库自动删除了,这就是级联删除 delete a where id='11'--drop table a--drop table b
[解决办法]
主键何来级联操作?只有外键才存在这个概念。
[解决办法]
[解决办法]
级联操作是针对外键吧
[解决办法]