CREATE DATABASE database_name
[ON[PRIMARY]
[<filespec>[, . . .n]]
[,<filegroup>[, . . .n]]
]
[LOG ON{<filespec>}]
[FOR LOAD丨FOR ATTACH]
其中<filespec>∷=
([NAME = longical_file_name,]
FILENAME = 'os _file_name'
[,SIZE =size]
[,MAXSIZE = { max_size丨UNLIMITED}]
[,FILEGROWTH = growth_increment])[,. . .n]
ALTER DATABASE database
{ ADD FILE <filespec>[, . . .n][TO FILEGROUP filegroup_name]
丨ADD LOG FILE <filespec>[, . . .n]
丨REMOVE FILE logical_file_name
丨ADD FILEGROUP filegroup_name
丨REMOVE FILEGROUP filegroup_name
丨MODIFY FILE <filespec>
丨MODIFY FILEGRUP filegroup_name filegroup_property
}
其中 <filespec> ∷ =
(NAME = 'logical_file_name'
[,FILENAME = 'os_file_name']
[,SIZE = size]
[,MAXSIZE = {max_size丨UNLIMITED}]
[,filegrowth = growth_increment])
DROP DATABASE _name[,. . .n]
CREATE TABLE table_name
( { <column_definition>
丨column_name AS computed_column_ecpression
丨<table_constraint>
}[, . . .n]
)
[ON{filegroup丨DEFAULT}]
[TEXTIMAGE_ON{filegroup丨DEFAULT}]
其中 <column_definition> ∷ = {column_name data _type}
[NULL丨NOT NULL]
[IDENTITY[(seed,increment)
[NOT FOR REPLICATION]]]
[ROWGUIDCOL]
[<column_constraint> ∷ = [CONSTRAINT constraint_name]
{ {PRIMART KEY丨UNIQUE}
[CLUSTERED丨NOUCLUSTERED]
[WITH[FILLFACTOR = fillfactor]
]
[ON{filegroup丨DEFAULT}]
丨[FOREIGN KEY]
REFERENCES ref_table
[(ref-column)]
[NOT FOR REPLICATION]
丨DEFAULT constant_expression
丨CHECK[NOT FOR REPLICATION]
(logical_expression)
}
][ . . .n]
其中 <table-constraint> ∷ =[CONSTRAINT constraint_name]
{ [{PRIMARY KEY丨UNIQUE}
[CLUSTERED丨NONCLUSTERED]
{(column[, . . .n])
[WITH[FILLFACTOR = fillfactor]
]
[ON{filegroup丨DEFAULT}]
]
丨FOREIGN KEY
[(column[, . . .n])]
REFERENCES ref_table[(ref_column[, . . .n])]
[NOT FOR REPLICATION]
丨CHECK[NOT FOR REPLICATION]
(serch_conditions)
}
ALTER TABLE table
{
[WITH CHECK丨WITH NOCHECK]
{ [ALTER COLUMN column_name
{
[new_data_type[(precision[,scal])]
[NULL丨NOT NULL]]
丨[{ADD丨DROP}ROWGUIDCOL]
}
]
丨ADD
{ [<column_definition>]
丨 column_name AS computed_column_expression
丨[ <table_constraint>]
}[, . . .n]
丨DROP
{ [CONSTRAINT]constraint
丨COLUMN column
}[, . . .n]
丨{CHECK丨NOCHECK}CONSTRAINT
{ALL丨DISABLE}TRIGGER
{ALL丨trigger[, . . .n]
}
}
其中 <column_definition> ∷ = {column_name data_type}
[NULL丨NOT NULL]
[IDENTITY[(seed[,increment])
[NOT FOR REPLICATION]]]
[ROWGUIDGOL]
[<column_constraint> ∷ = [CONSTRAINT constraint_name]
{ {PRIMARY KEY 丨UNIQUE}
[CLUSTERED丨NONCLUSTERED]
[WITH[FILLFACTOR = fillfactor]
]
[ON {filegroup 丨DEFAULT}]
丨[FOREIGN KEY]
REFERENCES ref_table
[(ref_column)]
[NOT FOR REPLICATION]
丨DEFAULT constant_expression[WITH VALUES]
丨CHECK[NOT FOR REPLICATION]
(logical_expression)]
}
][ . . .n]
其中 <table_constraint> ∷ = [CONSTRAINT constraint_name]
{ [ {PRIMARY KEY 丨UNIQUE}
[CLUSTERED丨NONCLUSTERED]
{(column[, . . .n])}
[WITH[FILLFACTOR = fillfactor]
]
[ON{filegroup丨DEFAULT}]
]
丨 FOREIGN KEY
[(column[, . . .n])]
REFERENCES ref_table[(ref_column[, . . .n])]
[NOT FOR REPLICATION]
丨 DEFAULT constant_expression
[FOR column]
丨 CHECK[NOT FOR REPLICATION]
(logical_expression)
}
DROP TABLE table_name
CREATE[UNIQUE][CLUSTERED丨NONCLUSTERED]
INDEX index_name ON table(column[, . . .n])
[WITH
[PAD_INDEX]
[[,]FILLFACTOR = fillfactor]
[[,]IGNORE_DUP_KEY]
[[,]DROP_EXISTING]
[[,]STATISTICS_NORECOMPUTE]
]
[ON filegroup]
DROP INDEX 'table.index'[, . . .n]
CREATE VIEW view_name[(column[, . . .n])]
[WITH ENCRYPTION]
AS
select_statement
[WITH CHECK OPTION]
ALTER VIEW wiew_name[(column[, . . . n])]
[WITH ENCRYPTION]
AS
select_statement
[WITH CHECK OPTION]
DROP VIEW {view}[, . . .n]
CREATE TRIGGER trigger_anme
ON table
[WITH ENCRYPTION]
{ {FOR{[,][DELETE][,][INSERT][,][UPDATE]}
[WITH APPEND]
[NOT FOR REPLICATION]
AS
sql_statement[ . . .n]
}
丨 {FOR{[,][INSERT][,][UPDATE]}
[WITH APPEND]
[NOT FOR REPLICATION]
AS
{ IF UPDATE(column)
[ . . .n]
丨IF(COLUMNS_UPDATED(){bitwise_operator}updated_bitmask)
{comparison_operator}column_bitmask[ . . .n]
}
sql_statement[ . . .n]
}
}
ALTER TEIGGER trigger_name
ON table
[WITH ENCRYPTION]
{ {FOR{[,][DELETE][,][UPDATE][,][INSERT]}
[NOT FOR REPLICATION]
AS
sql_statement[ . . .n]
}
丨 {FOR{[,][INSERT][,][UPDATE]}
[NOT FOR REPLICATION]
AS
{ IF UPDATE(column)
[{AND丨OR}UPDATE(column)]
[ . . .n]
丨IF(COLUMNS_UPDATED(){bitwise_operator}updated_bitmask)
{comparison_operator}column_bitmask[ . . .n]
}
sql_statement[ . . .n]
}
}
DROP TRIGGER{trigger}[, . . . n]
CREATE PROC[EDURE]procedure_name[;number]
[ {@parameter data_type}[VARYING][=default][OUTPUT]
][, . . .n]
[WITH
{RECOMPILE
丨ENCRYPTION
丨RECOMPILE,ENCRYPTION
}
]
[FOR REPLICATION]
AS
sql_statement[ . . .n]
ALTER PROC[EDURE]procedure_name[;number]
[{@parameter data_type}[ = default][OUTPUT]
][, . . .N]
[WITH
{ RECRYPTION
丨ENCRYPTION
丨RECOMPILE,ENCRYPTION
}
]
[FOR REPLICATION]
AS
sql_statement[ . . .n]
[[EXEC[UTE]]
{ [@return_status = ]
{procedure_name[;number]丨@procedure_anme_var
}
[[@parameter = ]{value丨@variable[OUTPUT]丨[DEFAULT]][, . . .n]
[WITH RECOMPILE]
DROP PROCEDURE{procedure}[, . . .n]
CREATE RULE rule AS condition_expression
sp_bindrule[@rulename = ]'rule',
[@objname =]'object_name'
[,[@futureonly =]'futureonly_flag']
sp_unbindrule[@objname =]'object_name'
[,[@futureonly =]'futureonly_flag']
DROP RULE {rule}[, . . .n]
CREATE DEFAULT default AS constant_expression
sp_bindefault[@defname =]'default',
[@objname =]'object_name'
[,[@futureonly =]'futureonly_flag']
sp_unbindefault[@objname =]'object_name'
[,[@futureonly =]'futureonly-flag']
DROP DEFAULT{default}[, . . .n]