Du har tre problemer:
- Du afslutter sætningen med
;i slutningen af din anden kodelinje. - Du har
FOR MEMBER_IDi den sidste sætning, som sandsynligvis burde væreFOR Sys_date. - Du gentager
ADDmen 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 , .