-- 更改字段類型 默認值 alter table 表名 alter column 字段名 類型 ALTER TABLE 表名 add DEFAULT ('修改後的默認值') for 字段名 WITH VALUES --注:若是該字段之前已經有默認值了,在修改以前須要先將約束刪除,不然會報錯 --刪約束的SQL: Alter table 表名 drop constraint 約束名 --關於約束名,須要先查一下, --查約束名的SQL: select c.name from sysconstraints a inner join syscolumns b on a.colid=b.colid inner join sysobjects c on a.constid=c.id where a.id=object_id('表名') and b.name='字段名' /* A. 添加新列 如下示例將添加一個容許空值的列,並且沒有經過 DEFAULT 定義提供的值。 在該新列中,每一行都將有 NULL 值。 */ CREATE TABLE doc_exa ( column_a INT) ; GO ALTER TABLE doc_exa ADD column_b VARCHAR(20) NULL ; GO DROP TABLE doc_exa ; GO --B. 刪除列 ALTER TABLE doc_exb DROP COLUMN column_b ; GO --C. 更改列的數據類型 INSERT INTO doc_exy (column_a) VALUES (10) ; GO ALTER TABLE doc_exy ALTER COLUMN column_a DECIMAL (5, 2) ; --D. 添加包含約束的列 ALTER TABLE doc_exc ADD column_b VARCHAR(20) NULL CONSTRAINT exb_unique UNIQUE ; /* E. 在現有列中添加一個 DEFAULT 約束 如下示例將建立一個包含兩列的表,在第一列插入一個值, 另外一列保持爲 NULL。而後在第二列中添加一個 DEFAULT 約束。 驗證是否已應用了默認值,另外一個值是否已插入第一列以及是否已查詢表。 */ ALTER TABLE doc_exz ADD CONSTRAINT col_b_def DEFAULT 50 FOR column_b ;