SQL Server 存储过程T-SQL基础语法

一、定义变量及赋值

--定义变量
declare @parameter_set varchar(20)
--赋值
set @parameter_set = 1;
select @parameter_set = '';
update Members set @parameter_set = Name where ID='';
--定义表变量
declare @tab table(Id varchar(36) not null,Name varchar(10) null)
--赋值
insert into @tab values('123','312');
--创建临时表,赋值同上
--# 表示局部 ## 表示全局
create table #table_1(
           --##table_1
    Id varchar(36) not null,
    Name varchar(10) null
)
--直接查询插入到临时表#table_2,无须创建
select * into #table_2 from Members

二、条件、循环、分支语句、异常处理、事务

2.1 条件 if else

if(10>2)
    begin
        print('true');
    end
else
    begin
        print('false');
    end

2.2 循环 while

declare @num int
set @num=1 
while(@num<=10)
    begin
        print @num
    end

2.3 分支 case when then else

declare @case_value int
declare @result varchar(10)
set @result = case
                when @case_value = 1 then '1'
                when @case_value = 2 then '2'
                when @case_value = 3 then '3'
                when @case_value = 4 then '4'
                else'0'
              end
print @result

2.4 异常处理try catch

begin try
    declare @try_int int;
    set @try_int = 1 / 0;
    print('1');
end try
begin catch
--这几个函数只能用在Catch里面!
    print(error_number());print(error_severity());
    print(error_state());print(error_procedure());
    print(error_line());print(error_message());
end catch

2.5 事务 tran

begin tran
    --执行业务逻辑,例如修改数据    
    if(@@ERROR <> 0) 
        begin
            --存在错误回滚
            rollback tran;
        end
commit tran
--最后提交
原文地址:https://www.cnblogs.com/haosit/p/10398677.html