变量是在批处理或过程的主体中用 DECLARE 语句声明的,并用 SET 或 SELECT 语句赋值。游标变量可使用此语句声明,并可用于其他与游标相关的语句。所有变量在声明后均初始化为 NULL。 Transact-SQL 语法约定语法 DECLARE {{ @local_variable [AS] data_type } | { @cursor_variable_name CURSOR } | { @table_variable_name < table_type_definition > } } [ ,...n] < table_type_definition > ::= TABLE ( { < column_definition > | < table_constraint > } [ ,... ] ) < column_definition > ::= column_name { scalar_data_type | AS computed_column_expression } [ COLLATE collation_name ] [ [ DEFAULT constant_expression ] | IDENTITY [ ( seed,increment ) ] ] [ ROWGUIDCOL ] [ < column_constraint > ] < column_constraint > ::= { [ NULL | NOT NULL ] | [ PRIMARY KEY | UNIQUE ] | CHECK ( logical_expression ) } < table_constraint > ::= { { PRIMARY KEY | UNIQUE } ( column_name [ ,... ] ) | CHECK ( search_condition ) }
DECLARE 就是申明一个变量 DECLARE @S VARCHAR(MAX)就是申明一个名字为S的VARCHAR(MAX)类型变量!
前面的是参数, 是调用这个存储过程的时候从外部输入进来的。
declare 是声明变量。
declare是声明变量的,它也是一个函数吗