當前位置:首頁 » 編程語言 » sql修改表欄位默認值為0
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql修改表欄位默認值為0

發布時間: 2023-03-05 06:08:37

Ⅰ 求一sql語句:使用左連接,沒有滿足條件的記錄會自動賦null值,請問如何修改使默認值為0

距離table1 兩列 a b,table2 兩列 b,c 。

select t1.*,(case when t2.c is null then 0 else t2.c end) as c 。

from table1 t1 left join table2 t2 on(t1.b=t2.b)。

Ⅱ SQL2000中,要把資料庫里的所有表中的Int類型欄位的默認值設置成"0",語句怎麼寫

ALTER TABLE tablename ADD CONSTRAINT [aaa]
DEFAULT (0) FOR [欄位]

Ⅲ 修改某一個欄位的默認值為0,SQL語句怎麼寫

ALTERTABLE表名CHANGE`xxx``xxx`INT(11)DEFAULT0NOTNULLCOMMENT'xxx';

裡面的xxx就是你要改的欄位名,default後面的0就是默認值,當寫入數據沒有傳這個欄位的時候,會自動填充0.

Ⅳ ACCESS中SQL語句修改欄位默認值

ACCESS修改欄位默認值的SQL語句寫法如下:

altertable[table]altercolumn[numbers]longdefault1

但是請注意ACCESS資料庫中的SQLJet引擎的默認語法為「ANSI-89SQL」語法,其數據定義功能比較弱,它不支持設置欄位的默認值屬性。

如果要以運行SQL數據定義語言的方法修改欄位的默認值,就必須使用「ANSI-92SQL」語法。

那麼在ACCESS資料庫中如何實現SQL語句修改欄位默認值呢?解決辦法由兩種:

1)使用ADO數據訪問對象運行SQL數據定義查詢語句

打開VBE編輯器——工具——引用

勾選「MicrosoftActiveXDataObjects2.1Library"或更高版本點擊「確認」按鈕

在ACCESS窗體的某個事件過程里(例如命令按鈕單擊事件)編寫下列代碼:

PrivateSubCommand0_Click()
DimcnAsNewADODB.Connection
Setcn=CurrentProject.Connection
cn.Execute"altertable[table]altercolumn[numbers]longdefault1"'此句修改默認值
EndSub

這樣既可實現在ACCESS中用SQL語句修改欄位默認值了。

2)將ACCESS資料庫的SQL語法改為「ANSI-92SQL」

菜單——工具——選項設置SQL語法請參見下圖:

這樣前面給出的SQL語句就可以在ACCESS中直接運行了,因為已經轉換了語法。這里給出的是ACCESS2003設置「SQL語法」的方法,若是2007、2010具體步驟會不太相同,但是基本原理是相通。

說明:

推薦使用第一種方法。至於第二種方法除非是新建資料庫時就進行語法轉換,否則最好避免使用。因為這樣很可能會導致原來已經建立的查詢運行結果不正確甚至無法運行,還可能導致其他設置出問題,例如有效性規則等不一而足。

這可是老鳥支招,如果感覺有用能給加點分嗎?

Ⅳ sql語句中修改欄位的默認值,該怎麼做

1、選擇要修改欄位的表,右鍵選擇設計;

Ⅵ sql 更改默認值

命名為:

alter table tablename alter column drop default; (若本身存在默認值,則先刪除)

alter table tablenamealter column set default 't5';(若本身不存在則可以直接設定)

eg:

alter table `t_member_base_ext` alter member_autograph drop default;

alter table `t_member_base_ext` alter member_autograph set default null;

- t_member_base_ext 表名

-member_autograph 表欄位

(6)sql修改表欄位默認值為0擴展閱讀:

注意事項

一、ONLY_FULL_GROUP_BY
對於使用GROUP BY進行查詢的SQL,不允許SELECT部分出現GROUP BY中未出現的欄位,也就是SELECT查詢的欄位必須是GROUP BY中出現的或者使用聚合函數的或者是具有唯一屬性的。

二、STRICT_TRANS_TABLES

該選項針對事務性存儲引擎生效,對於非事務性存儲引擎無效,該選項表示開啟strict sql模式。在strict sql模式下,在INSERT或者UPDATE語句中,插入或者更新了某個不符合規定的欄位值,則會直接報錯中斷操作。

三、NO_ZERO_IN_DATE

MySQL中插入的時間欄位值,不允許日期和月份為零。

四、NO_ZERO_DATE

MySQL中插入的時間欄位值,不允許日期為零。

五、ERROR_FOR_DIVISION_BY_ZERO

INSERT或者UPDATE語句中,如果數據被0除,則出現警告(非strict sql模式下)或者錯誤(strict sql模式下)。

Ⅶ 如何使用SQL語句修改欄位默認值

alter table 表名 drop constraint 約束名字 說明:刪除表的欄位的原有約束 alter table 表名 add constraint 約束名字 DEFAULT 默認值 for 欄位名稱 說明:添加一個表的欄位的約束並指定默認值go例:alter table T_ping drop constraint DF_T_ping_p_c alter table T_ping add constraint DF_T_ping_p_c DEFAULT ((2)) for p_cgoalter table with check T_ping add constraint DF_T_ping_p_c DEFAULT ((2)) for p_c alter table with nocheck T_ping add constraint DF_T_ping_p_c DEFAULT ((2)) for p_c 兩者的區別是If you do not want to verify new CHECK or FOREIGN KEY constraints against existing data, use WITH NOCHECK. This is not recommended except in rare cases. The new constraint will be evaluated in all future updates. 對於要建立約束的兩個表,如果其中的一個已有數據,把在創建時檢查現有數據選項設置為是將告訴SQL SERVER:當開始具體創建約束時,要對表中現有的數據進行檢查。如果現有數據符合約束的定義,則約束被成功加入到表中源碼天空