如果我們需要修改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;