1 - SQL Server 2008 之 使用SQL語句建立具有約束條件的表

來源:互聯網
上載者:User

標籤:

約束條件分為以下幾種:

1)非空約束,使用NOT NULL關鍵字;

2)預設值約束,使用DEFAULT關鍵字;

3)檢查約束,使用CHECK關鍵字;

4)唯一約束,使用UNIQUE關鍵字;

5)主鍵約束,使用PRIMARY KEY關鍵字;

6)外鍵約束,使用FOREIGN KEY關鍵字。

約束是確保資料的完整性,從而阻止不希望插入的資料被錄入。

 

以下使用一段SQL代碼進行示範:

USE PersonInfo  --使用PersonInfo資料庫GOIF EXISTS (SELECT * FROM sys.tables WHERE [name] = ‘Employee ‘)  --如果存在Employee這張表DROP TABLE Employee  --則刪除GOIF EXISTS(SELECT * FROM sys.tables WHERE [name] = ‘Person‘)  --如果存在Person這張表DROP TABLE Person --則刪除GOCREATE TABLE Person --建立Person(人物)表(  --索引  PersonID int IDENTITY(1,1) NOT NULL CONSTRAINT PK_PersonID PRIMARY KEY,-- 建立一個整型、自增為1、識別值種子為1、不允許為空白、約束條件為主鍵約束的列PersonID  --名字  Name nvarchar(20) NOT NULL, --建立一個Unicode非固定長度(最多儲存20個Unicode字元)的列Name  --年齡  Age int NOT NULL  CONSTRAINT CK_Age CHECK (Age >= 18  AND Age<=55) ,--建立一個整型、約束條件為檢查約束的列Age  --性別  Gender bit NOT NULL CONSTRAINT DF_Gender  DEFAULT(1) , --建立一個類型為bit、預設值為1(True)的列Gender  --身份資訊  [Identity] nchar(18) NOT NULL CONSTRAINT CK_Identity CHECK(LEN([Identity])=18)                                  CONSTRAINT  UQ_Identity UNIQUE  --建立一個非Unicode非固定長度(最多儲存18個非Unicode字元)的、約束條件為檢查約束的列Identity)GOCREATE TABLE Employee --建立Employee(僱員)表(    --索引    EmployeeID int IDENTITY(1,1001) NOT NULL CONSTRAINT PK_ID PRIMARY KEY, -- 建立一個整型、自增為1、識別值種子為1001、不允許為空白、約束條件為主鍵約束的列EmployeeID    --人物索引     PersonID int NOT NULL CONSTRAINT FK_PersonID FOREIGN KEY REFERENCES Person(PersonID),    --職位     Post nvarchar(20) NOT NULL,--建立一個Unicode非固定長度(最多儲存20個Unicode字元)的列Post    --入職時間     EntryTime datetime CONSTRAINT DF_EntryTime DEFAULT getdate() --建立一個類型為datetime、預設值為取伺服器時間的列EntryTime)GO

結果:

 

1 - SQL Server 2008 之 使用SQL語句建立具有約束條件的表

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.