第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

sql菜鳥關于設置not null約束的疑問

sql菜鳥關于設置not null約束的疑問

紅顏莎娜 2019-04-08 08:04:10
我是個sql server初學者,看書的時候看到這樣一個例子/*例5-13 建立一個S2表,對SNO字段進行NOT NULL約束。*//*程序清單如下:*/Use dbCREATE TABLE S2(SNO CHAR(10) CONSTRAINT S_CONS NOT NULL,SN VARCHAR(20),AGE INT,SEX CHAR(2) DEFAULT '男' ,DEPT VARCHAR(20)) 我有點奇怪:1.為什么要在not null前面加個約束名呢?我看過的一些例子都是直接在字段名后面接not null或null的呀,2.例子中的age字段為什么沒有加任何約束,null或not null也沒加,這是為什么呢,是不是什么時候可以省略不寫null或not null呢?
查看完整描述

3 回答

?
慕的地8271018

TA貢獻1796條經(jīng)驗 獲得超4個贊

其實前面2位都已經(jīng)講的很清楚了,如果還不清楚,那我再舉例說明一下:
1.默認的情景:
create table s2 (sno char(10));--此時未顯示的指明null或not null,那么系統(tǒng)會默認為null.

2.加入not null約束:
create table s2 (sno char(10) not null) --此時顯示的指定為not null,但沒有指定該約束的名稱,系統(tǒng)會自動為該約束取一個名字,該名字很長,程序員也記不住.

3.為了解決系統(tǒng)自動命名的約束名難記的問題,用戶可自己給該約束取個名字為s_cons:
create table s2 (sno char(10) constraint s_cons not null)


查看完整回答
反對 回復 2019-04-09
?
慕慕森

TA貢獻1856條經(jīng)驗 獲得超17個贊


SQL 默認情況下
AGE INT = AGE INT null
DEPT VARCHAR(20)=DEPT VARCHAR(20) null

SNO CHAR(10) CONSTRAINT S_CONS NOT NULL
這種寫法是多余
改為SNO CHAR(10) NOT NULL


查看完整回答
反對 回復 2019-04-09
?
千巷貓影

TA貢獻1829條經(jīng)驗 獲得超7個贊

1、因為這是書上的例子,所以他會以各個方面的情況來舉例,已覆蓋盡可能多的知識點,實際上是完全可以不要加約束的,可以直接加null或not null。
2、什么都不加的話默認 null。

查看完整回答
反對 回復 2019-04-09
  • 3 回答
  • 0 關注
  • 1023 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號