1. 程式人生 > 其它 >SQL Sever基礎資料庫約束,go(批處理)

SQL Sever基礎資料庫約束,go(批處理)

一.資料庫約束

1.主鍵約束(primary key):主鍵修飾的欄位,非空且唯一,一張表中只能有一個主鍵

2.非空約束(not null):用not null約束的欄位不能為null值,必須給定具體的資料。

3.唯一約束(unique):不允許重複,使用方法跟主鍵一樣,限定不了空值,要想限定,還要新增非空約束

4.外來鍵約束:

foreign key(外來鍵名稱) references ——表名稱(主鍵);

其中,多表指關係中的多方,一表指關係中的一方,外來鍵名稱自定義,一般為一表名稱_id,主要用於多表之間聯絡。新增外來鍵約束後,主表不能刪除從表中已引用的資料,從表不能新增主表中不存在的資料。

5.檢查約束(check):如下圖,給性別加以限制,是男或女。

6.預設約束(default):如下圖,性別預設為男

7.自增長:identity(初始值,每次增長個數)

二.go批處理:

1.GO語句必須自成一行,只有註釋可以在同一行上;

2.被GO語句隔開的所有SQL語句會被編譯成一個執行計劃併發送到伺服器,與任何其他批處理無關,每個批處理單獨傳送到伺服器,這樣在執行的過程中,因為每個批處理被單獨地處理,所以一個批處理中的錯誤不會阻止另一個批處理執行;

3.分析器會先分析下一個go前的所有程式碼,然後再執行,就算最後一步錯,也會回滾到第一個語句的狀態,換句話說,就是分析器會把go之間的語句作為一個事務,有錯誤的話會回滾到上一go之前。