Anda memiliki tiga masalah:
- Anda mengakhiri pernyataan dengan
;
di akhir baris kode kedua Anda. - Anda memiliki
FOR MEMBER_ID
dalam pernyataan terakhir, yang mungkin harusFOR Sys_date
. - Anda ulangi
ADD
tapi tidak harus .
Dengan asumsi struktur tabel ini:
CREATE TABLE Member (MEMBER_ID BIGINT NOT NULL, Sys_date DATETIME);
DDL ini akan berfungsi:
ALTER TABLE MEMBER
ADD CONSTRAINT U_MEMBERID UNIQUE(MEMBER_ID), primary key (MEMBER_ID),
CONSTRAINT Sys_date DEFAULT GETDATE() FOR Sys_date;
Lihat sqlfiddle ini .
Anda bisa secara teoritis juga lihat ini di halaman MSDN di ALTER TABLE
, meskipun saya dengan mudah mengakui bahwa spesifikasi itu sulit dibaca. Berikut cara mereka menjelaskannya:
ALTER TABLE [ database_name . [ schema_name ] . | schema_name . ] table_name
{
ALTER COLUMN column_name
-- Omitted....
| ADD
{
<column_definition>
| <computed_column_definition>
| <table_constraint>
| <column_set_definition>
} [ ,...n ]
-- Omitted....
ADD
kata kunci muncul sekali, dan } [ ,...n ]
bit memberi tahu Anda bahwa Anda dapat mengulangi bit di antara {brackets} n
kali, dipisahkan oleh ,
.