创建表(加约束)

--在自己创建的数据库中创建表

use SB         --使用某个数据库,格式: ues 数据库名
create table 123   --格式:create table 自定义的表名
(     --字段名一般为有一定意义的英文
names char (15), -- 格式:字段名 类型 () 括号里面的是允许输入的长度
age int,   --int型的后面不要接长度
years text (20)   --最后一个字段后面不要逗号
)

--在创建表时就可以对字段加上约束:
create table 123
(
names char (15) primary key identity(1,1) , --加主键约束,还有标识列属性(两者构成实体完整性)
age int not null,    --加非空约束,不打"not null"默认为:可以为空
years text (20) foreign key references 456(years),   --加外键约束,格式:foreign key references 关联的表名(字段名)
class char (20) default '哈哈'   --加默认值约束
school char (30) check(school='十五' or school='十') --加检查约束,格式:check (条件表达式)    --
)

--如果在表创建好了以后再加约束,则格式分别为:

-- 主键:
alter table 表名
add constraint PK_字段名 --"PK"为主键的缩写,字段名为要在其上创建主键的字段名,'PK_字段名'就为约束名
primary key (字段名)   --字段名同上

--唯一约束:
alter table 表名
add constraint UQ_字段名
unique (字段名)

--外键约束:
alter table 表名
add constraint FK_字段名 --"FK"为外键的缩写
foreign key 字段名 references 关联的表名 (关联的字段名) --注意'关联的表名'和'关联的字段名'

--检查约束:
alter table 表名
add constraint CK_字段名
check (条件表达式)   --条件表达式中的条件用关系运算符连接

--默认值约束:
alter table 表名
add constraint DF_字段名
default '默认值' for 字段名 --其中的'默认值'为你想要默认的值,注意'for'

--删除创建的约束:
alter table 表名
drop constraint 约束名   --约束名为你前面创建的如:PK_字段 这样的约束名
     --注意:如果约束是在创建表的时候创建的,则不能用命令删除
     --只能在'企业管理器'里面删除

 

sql 级联删除

sqlserver 支持级联更新和删除
oracle 只支持级联删除

 

alter table 表名
add constraint 外键名
foreign key(字段名) references 主表名(字段名)
on delete cascade

语法:
Foreign Key
(column[,...n])
references referenced_table_name[(ref_column[,...n])]
[on delete cascade]
[on update cascade]
注释:
column:列名
referenced_table_name:外键参考的主键表名称
ref_name:外键要参考的表的主键列
on delete:删除级联
on update:更新级联

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值