1. 程式人生 > >SQL Server表的設計(建表)

SQL Server表的設計(建表)

知識部分
1、SQLServer資料型別
·資料型別是資料的一種屬性,用來定義資料是時間、數字、字串(文字、字母)等
·SQLServer提供系統資料型別集,該型別集定義了可以與SQLServer一起使用的所有資料型別
·常用的資料型別:
int:從-2147483648到-2147483647之間的整數(可用於識別符號列)
money:貨幣型別,可包含小數。
decimal:小數,位數較大
float:小數
datetime:日期型別
char:可包含8000個字元
varchar:較char可儲存更多字元
binary:用於儲存可達8000位元組長的定長的二進位制資料
image:大約可儲存20億個二進位制資料
2、預設值
在插入資料是如果對一行的某一列沒有鍵入資料(留空)而且設定了預設值,那麼這一列就會使用預設值。
3、識別符號列
表的序號,自動遞增,具有三個特點:
·列的資料型別不能為小數型別
·不允許控制null
·每個表只能有一個識別符號列
4、check約束
通過check約束可以限制域的完整性。通過任何基於邏輯運算子返還的TRUE或FALSE的邏輯表示式建立check約束。例如可以通過設定check約束限制輸入的年齡、出生日期等資料

操作部分
·圖形化建表
1、首先展開以下節點-點選新建表
SQLServer表的設計(建表)
2、SSMS會彈出一個表的設計框
SQLServer表的設計(建表)
3、建立幾個列,準備做操作
SQLServer表的設計(建表)
4、大家都知每個學生的學號肯定都是獨一無二的,所以我們可以將學號這一列設定為主鍵,不允許存在重複的
SQLServer表的設計(建表)
5、設定完成它會變成這樣,出現一個鑰匙圖示,允許空值的勾也會自動去掉
SQLServer表的設計(建表)
6、然後我們也可以做一個識別符號列,在表設計器中找到“標識規範”-將選項改為“是”即可
SQLServer表的設計(建表)
7、對於一個班級的同學,我們可以將所在班級的列設定一個預設值。這樣寫資料的時候如果不寫所在班級系統就會自動填寫上我們指定預設值。
SQLServer表的設計(建表)
8、右鍵點選空白處-可以新建check約束,這樣就可以限制資料的寫入了。例如限制性別隻能填寫“男”或“女”;成績限制0到100分。
SQLServer表的設計(建表)


9、這裡我限制的是成績,填寫表示式,關閉即可。其他的約束類似。
SQLServer表的設計(建表)

·T-SQL語句建表
舉個例子:
create table name(
StudentID varchar(10)NOT NULL,
Sname varchar(10)DEFAULT NULL,
sex char(2)DEFAULT NULL,
cardID varchar(20)DEFAULT NULL,
Birthday datetime DEFAULT NULL,
Email varchar(40)DEFAULT NULL,
Class varchar(20)DEFAULT NULL,
enterTime datetime DEFAULT NULL)
Go
!!!首先 create 是建立的意思,table即表,name是給表起的名字。後面跟上(),()內的內容就是表的每一列;其中第一個欄位為列的名字,然後是列的資料型別,後面的是否允許空值null。語句最後面的GO即為執行。操作時,我們點選SSMS左上角的“新建查詢”-然後輸入語句-點選“執行”
SQLServer表的設計(建表)


執行後可以看到
SQLServer表的設計(建表)
重新整理一下“表”
SQLServer表的設計(建表)
新建的名為“name”的表就可以看到了
SQLServer表的設計(建表)