怎么在mysql的字段中設(shè)置默認(rèn)值
創(chuàng)新互聯(lián)于2013年創(chuàng)立,先為澠池等服務(wù)建站,澠池等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為澠池企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
--SQL:
CREATE TABLE test(
i_a int NOT NULL DEFAULT 1,
ts_b timestamp NOT NULL DEFAULT NOW(),
c_c char(2) NOT NULL DEFAULT '1'
);
--以下SQL不合法
--time_d time NOT NULL DEFAULT CURTIME(),
--date_e date NOT NULL DEFAULT CURDATE(),
--datetime_f datetime NOT NULL DEFAULT NOW(),
總結(jié)
int類(lèi)型:默認(rèn)值也得是整型,并且default后邊不要()括號(hào)。
char類(lèi)型:默認(rèn)值使用單引號(hào)。
DATETIME類(lèi)型:NOW()函數(shù)以'YYYY-MM-DD
HH:MM:SS'返回當(dāng)前的日期時(shí)間,可以直接存到DATETIME字段中。不支持使用系統(tǒng)默認(rèn)值。
DATE類(lèi)型:CURDATE()以'YYYY-MM-DD'的格式返回今天的日期,可以直接存到DATE字段中。不支持使用系統(tǒng)默認(rèn)值。
TIME類(lèi)型:CURTIME()以'HH:MM:SS'的格式返回當(dāng)前的時(shí)間,可以直接存到TIME字段中。不支持使用系統(tǒng)默認(rèn)值。
參考資料
mysql表字段默認(rèn)值
用sql語(yǔ)句創(chuàng)建表時(shí),給表字段默認(rèn)值出錯(cuò)。
比如:mssql中
CREATE TABLE dnt_forums(
aa int NOT NULL DEFAULT (''),
bb date NOT NULL DEFAULT (getdate()),
cc char(50) NOT NULL DEFAULT (null)
}
請(qǐng)問(wèn)上述的sql語(yǔ)句要如何修改在mysql中才能使用
aa 是 int 類(lèi)型,默認(rèn)值也得是整型,并且default后邊不要()括號(hào)
bb date類(lèi)型不支持使用系統(tǒng)默認(rèn)值,改成timestamp,能過(guò)now()取系統(tǒng)時(shí)間
cc 已經(jīng)不允許為空(not null)所以不能默認(rèn)為 null ,可以改成空字符串
CREATE TABLE dnt_forums(
aa int NOT NULL DEFAULT 2,
bb timestamp NOT NULL DEFAULT now(),
cc char(50) NOT NULL DEFAULT ''
);
打開(kāi)SQLyog客戶端,連接數(shù)據(jù)庫(kù)如下圖所示,點(diǎn)擊connection 按鈕 連接數(shù)據(jù)庫(kù)
我的數(shù)據(jù)庫(kù)名稱(chēng)為edu,然后我隨意找到數(shù)據(jù)庫(kù)中test2表,右鍵-----》Alter Table
3
如果安裝數(shù)據(jù)庫(kù)的 時(shí)候 沒(méi)有選擇字符集設(shè)置,那么mysql數(shù)據(jù)庫(kù)默認(rèn)為latin1,在箭頭部分選擇utf8字符集
命令行界面
若本身存在默認(rèn)值,則先刪除
alter?table表名alter?column字段名drop?default;
然后設(shè)置默認(rèn)值(若本身不存在則可以直接設(shè)定)
alter?table表名?alter?column字段名?set?default默認(rèn)值;
mysql表字段默認(rèn)值的方法。
如下參考:
1.首先,創(chuàng)建一個(gè)新的表結(jié)構(gòu),如下圖所示。
2.選擇*fromt_temp_test檢查表是否已經(jīng)在數(shù)據(jù)庫(kù)中。
3.如果查看t_temp_test表結(jié)構(gòu)sp_helpt_temp_test,您可以看到字段column_b的默認(rèn)值被定義為空。
4.修改默認(rèn)值的表格,刪除可以修改表格的默認(rèn)屬性,刪除默認(rèn)屬性的表格。
5.刪除后執(zhí)行sp_helpt_temp_test,此時(shí)默認(rèn)值屬性已被刪除。
6.然后添加默認(rèn)屬性altertablet_temp_test為column_b添加約束df_temp_tes_columbb_19da45dbDEFAULT('123')。
修改mysql中列的默認(rèn)值的方法:
若本身存在默認(rèn)值,則先刪除:
alter table表名alter column字段名drop default;
然后設(shè)置默認(rèn)值(若本身不存在則可以直接設(shè)定)
alter table表名 alter column字段名 set default默認(rèn)值;
alter table [tablename] drop constraint [標(biāo)識(shí)]
ALTER TABLE [tableName] ADD
CONSTRAINT [標(biāo)識(shí)] DEFAULT (25) FOR [columnName]
如果原字段沒(méi)有默認(rèn)值,下面一句就不用寫(xiě)了:
alter table [tablename] drop constraint [標(biāo)識(shí)]
即先給此字段添加一個(gè)默認(rèn)值
要已經(jīng)有了默認(rèn)值就寫(xiě)上面的Ok