如果我們需要修改sql server表結構,應該怎麼做呢?下面就將教您如何修改sql server表結構的方法,希望對您學習sql server表結構方面能夠有所幫助。
向sql server表中增加一個varchar列:
ALTER TABLE distributors ADD COLUMN address varchar(30);
從sql server表中刪除一個字段:
ALTER TABLE distributors DROP COLUMN address RESTRICT;
在一個操作中修改兩個現有字段的類型:
ALTER TABLE distributors
ALTER COLUMN address TYPE varchar(80),
ALTER COLUMN name TYPE varchar(100);
使用一個 USING 子句, 把一個包含 UNIX 時間戳的 integer 字段轉化成 timestamp with time zone:
ALTER TABLE foo
ALTER COLUMN foo_timestamp TYPE timestamp with time zone
USING
timestamp with time zone 'epoch' + foo_timestamp * interval '1 second';
對現存字段改名:
ALTER TABLE distributors RENAME COLUMN address TO city;
更改現存sql server表的名字:
ALTER TABLE distributors RENAME TO suppliers;
給一個字段增加一個非空約束:
ALTER TABLE distributors ALTER COLUMN street SET NOT NULL;
從一個字段裡刪除一個非空約束:
ALTER TABLE distributors ALTER COLUMN street DROP NOT NULL;
給一個表增加一個檢查約束:
ALTER TABLE distributors ADD CONSTRAINT zipchk CHECK (char_length(zipcode) = 5);
刪除一個表和它的所有子表的監查約束:
ALTER TABLE distributors DROP CONSTRAINT zipchk;
向表中增加一個外鍵約束:
ALTER TABLE distributors ADD CONSTRAINT distfk FOREIGN KEY (address) REFERENCES addresses(address) MATCH FULL;
給表增加一個(多字段)唯一約束:
ALTER TABLE distributors ADD CONSTRAINT dist_id_zipcode_key UNIQUE (dist_id, zipcode);
給一個表增加一個自動命名的主鍵約束,要注意的是一個表只能有一個主鍵:
ALTER TABLE distributors ADD PRIMARY KEY (dist_id);
把表移動到另外一個表空間:
ALTER TABLE distributors SET TABLESPACE fasttablespace;