Du har tre problemer:
- Du afslutter sætningen med
;
i slutningen af din anden kodelinje. - Du har
FOR MEMBER_ID
i den sidste sætning, som sandsynligvis burde væreFOR Sys_date
. - Du gentager
ADD
men behøver ikke .
Forudsat denne tabelstruktur:
CREATE TABLE Member (MEMBER_ID BIGINT NOT NULL, Sys_date DATETIME);
Denne DDL vil virke:
ALTER TABLE MEMBER
ADD CONSTRAINT U_MEMBERID UNIQUE(MEMBER_ID), primary key (MEMBER_ID),
CONSTRAINT Sys_date DEFAULT GETDATE() FOR Sys_date;
Se denne sqlfiddle .
Du kan teoretisk set også se dette på MSDN's side på ALTER TABLE
, selvom jeg gerne vil indrømme, at disse specifikationer kan være svære at læse. Her er et stik over, hvordan de forklarer det:
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
nøgleordet forekommer én gang, og } [ ,...n ]
bit fortæller dig, at du kan gentage bit mellem {parentes} n
gange, adskilt af en ,
.