--在自己创建的数据库中创建表
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:更新级联
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|