你這樣設(shè)置之后,是不能插入的空(NULL),而是能插入空串(\\'\\')。
十年的新津縣網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整新津縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“新津縣網(wǎng)站設(shè)計(jì)”,“新津縣網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
如果不讓插入空串,應(yīng)該使用check,例如:
CREATE TABLE table2 (
title varchar(50) NOT NULL,
message varchar(200) NOT NULL DEFAULT \\'內(nèi)容\\',
msname varchar(50) NOT NULL DEFAULT \\'發(fā)布人\\',
date date NOT NULL,
PRIMARY KEY (`title`) ,
CHECK (title!=\\'\\')
) ;
不知道你為啥要這么問(wèn),沒(méi)有數(shù)據(jù)當(dāng)然可以這么設(shè)置了,如果有數(shù)據(jù)且設(shè)置列為空時(shí),你設(shè)置非常,會(huì)提示設(shè)置不了,但沒(méi)有數(shù)據(jù)的情況下,肯定是可以這么設(shè)置的。
可以。
MySQL 非空約束(NOT NULL)指字段的值不能為空。對(duì)于使用了非空約束的字段,如果用戶在添加數(shù)據(jù)時(shí)沒(méi)有指定值,數(shù)據(jù)庫(kù)系統(tǒng)就會(huì)報(bào)錯(cuò)??梢酝ㄟ^(guò) CREATE TABLE 或 ALTER TABLE 語(yǔ)句實(shí)現(xiàn)。在表中某個(gè)列的定義后加上關(guān)鍵字 NOT NULL 作為限定詞,來(lái)約束該列的取值不能為空。
比如,在用戶信息表中,如果不添加用戶名,那么這條用戶信息就是無(wú)效的,這時(shí)就可以為用戶名字段設(shè)置非空約束。
在創(chuàng)建表時(shí)設(shè)置非空約束
創(chuàng)建表時(shí)可以使用 NOT NULL 關(guān)鍵字設(shè)置非空約束,具體的語(yǔ)法格式如下:
字段名 數(shù)據(jù)類型 NOT NULL;
空值是一種特殊的狀態(tài), 表示某一個(gè)字段"沒(méi)有被處理過(guò)"
幾乎在所有的數(shù)據(jù)庫(kù)中甚至是編程語(yǔ)言中, 空與非空都有其存在的意義, 舉個(gè)例子, 一個(gè)人員表中, 有一個(gè)年齡字段, 這個(gè)年齡字段如果為非 空, 則在不知道人員年齡的情況下, 數(shù)據(jù)無(wú)法入庫(kù), 否則會(huì)顯示個(gè)奇怪的年齡(比如0歲, 或者-1歲等)
而有些情況澤不可以為空, 最常見的就是"主鍵", 比如身份證號(hào)之類的