通过sql命令建表 和 主外键约束以及其他约束

时间:2022-06-01 09:28:12

create table命令

 create table dept
( dept_id int primary key,
dept_name nvarchar(100) not null,
dept_address nvarchar(100)
) creat table emp
( emp_id int constraint pk_emp_id_a primary key, --主键约束
emp_name nvarchar(20) not null,
emp_sex nchar(1),
dept_id int constraint fk_dept_id_b foreign key references dept(dept_id) --外键约束 )

注意点:

1.  创建表的命令后面是小括号(),而不是{},

2.  注释用--

3.  SQL Server里最后一行)的逗号可有可无,但是Oracle数据库不能加逗号,但是建议SQL最后一个字段不要写逗号,方便移植

4.  nvarchar表示国际化编码长度可变的字符型变量

5.  变量类型写在变量名后面,跟C语言以及其他语言不同,SQLServer不是C语言写的

6.  主键外键可以命名,不然就是默认的名字

7.  写完后,鼠标左键选中整个代码,分析、执行,最后生成表

什么是约束constraint:

对一个表中的属性操作的限制

分类:

主键约束:不允许重复元素,避免数据的冗余

外键约束:通过外键约束,从语法上保证了本事物所关联的其他事物一定是存在的。事物和事物之间的关系是通过外键来体现的

check约束:保证事物属性的取值在合法的范围之内

 create table student
(
stu_id int primary key,
stu_sal int check (stu_sal>=1000 and stu_sal<=8000)
) insert into student values(1,1000)
insert into student values(2,10000) --报错,后者超过规定范围