通過sql命令建表 和 主外鍵約束以及其他約束


create table命令

 1 create table dept
 2 (     dept_id int primary key,
 3      dept_name nvarchar(100) not null,
 4      dept_address nvarchar(100)
 5  )  
 6 
 7 creat table emp 
 8 (     emp_id int constraint pk_emp_id_a primary key, --主鍵約束
 9      emp_name nvarchar(20) not null,
10      emp_sex nchar(1),
11 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約束:保證事物屬性的取值在合法的范圍之內

 

1 create table student
2 (
3      stu_id int primary key,
4      stu_sal int check (stu_sal>=1000 and stu_sal<=8000)
5  )
6 
7  insert into student values(1,1000)
8  insert into student values(2,10000) --報錯,后者超過規定范圍

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM