tft每日頭條

 > 科技

 > sqlserver有insert語句嗎

sqlserver有insert語句嗎

科技 更新时间:2024-08-04 03:10:48

在SQL數據庫基礎系列之二内,我創建了一個TEST數據庫和一個T_Student表,表内數據如下:

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)1

基礎測試數據

如果我們想在這個表内增加一條記錄,我們可以使用Insert語句。

舉例1:來了一個新同學,學号是202101011、姓名王靜、分配在靜園1棟103、性别女、聯系電話17622112221、年齡19。SQL語句可以這樣寫:

Insert into T_Student

Values('202101011','王靜','靜園1棟303','女','17622112221',19)

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)2

舉例1

知識點

1、Insert into 表A 表示向表A内增加一條記錄。

2、Values () 表示要增加的數據,()内是各數據值。

3、()内的各數據必須對應表内的各字段,順序必須一緻,不可前後颠倒。比如學号必須放在第一位、姓名必須放在第二位。

4、大家注意到Values('202101011','王靜','靜園1棟303','女','17622112221',19)這條SQL語句,有些值用了一對單引号,有些值沒有用,是否要用單引号取決于對應字段類型。比如C_StuNumber學号字段,在SQL數據庫基礎系列之二:Select用法中設計表結構的時候被設計成為char(20)字符串類型。在Insert into語句中,字符型或字符串型必須使用一對單引号。再比如I_Age年齡字段是數值型字段,則不需要使用單引号,直接寫數字即可。

舉例2:又來了一個新同學,學号是202101011、姓名王靜、分配在梅園3棟103、性别女、聯系電話1762211222、年齡19。SQL語句可以這樣寫:

Insert into T_Student

Values('202101011','王靜','靜園1棟303','女','17622112222',19)

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)3

舉例2

執行後,新增加的數據在第12條,這裡大家可能會奇怪了,怎麼第11、12兩條數據的學号都一樣呢?那麼問題就來了,由此引申出一個原則,就是表内數據的唯一性。我們可以看到第11、12兩條數據姓名、地址、性别、年齡都是重複的,但這些都沒有關系,因為在現實生活中我們可能會碰到同名、同住一個寝室、同一性别、同一年齡的情況。但是學生的學号肯定是唯一的,不可能出現同學号的情況,否則肯定會出問題。那我們如何避免這種情況呢?光靠我們在寫代碼的時候人工識别嗎?那顯然是不合适的,那麼必須交給SQL軟件去識别判斷重複。

我們在設計T_Student表的時候,可以将C_StuNumber字段設置為主鍵,主鍵的意思是字段唯一不重複。設置主鍵後字段前面會出現一個鑰匙圖标,然後點擊保存按鈕。點擊如圖1-3。

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)4

圖1

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)5

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)6

圖3

因為我們在例2中插入了一條重複學号的數據,所以上述設置主鍵操作會提示失敗。應該在設置主鍵之前,先把第12條數據删除掉。操作步驟:展開TEST數據庫,選擇T_Student表點擊右鍵,選擇“編輯前200行”選項。在右側的數據列表選擇最後要删除的一行,點擊右鍵選擇删除。然後再做設置主鍵操作。如圖4-5

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)7

圖4

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)8

圖5

設置完主鍵以後,我們再執行一次上面的SQL語句

Insert into T_Student

Values('202101011','王靜','靜園1棟303','女','17622112222',19)

系統會提示報錯。如圖6

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)9

圖6

我們的手機經常會安裝一些應用軟件,在初次使用應用軟件時,經常會出現需要我們注冊的情況。有些軟件注冊界面會出現必填項和選填項。比如手機号碼是必填項、備注欄是選填項。那麼套用到我們的T_Student表内,我們可以設置這樣的場景,不是所有的學生都有手機,那麼我們允許手機号碼字段為空。可以設計他T_Student表時,勾選C_Phone字段允許為Null選項并保存。如圖7

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)10

圖7

舉例3:我們添加一條數據,SQL語句可以這樣寫:

Insert into T_Student

Values('202101012','王小丫','靜園1棟304','女','',19)

sqlserver有insert語句嗎(SQL數據庫基礎系列之四)11

注意:如果空的字段類型是字符型,那麼要保留一對空的單引号;如果是數值型則隻要一個逗号就可以了。

Values('202101012','王小丫','靜園1棟304','女','',19)

Values('202101012','王小丫','靜園1棟304','女', ,19)

第一條語句假設聯系電話字段是字符串型

第一條語句假設聯系電話字段是數值型

請細品兩條語句的區别。

備注:我的每一篇文章都隻講一個語句的用法,而且基礎系列隻講簡單的用法,後續會繼續講解進階用法,請大家放心。另外如果覺得寫的還可以請幫我點個贊關注一下我,您的每一個贊都是對秃頭程序員的肯定和鼓勵。隻有一百個粉絲才可以申請頭條認證。我希望能通過頭條認證,持續給大家帶來更好的作品。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved