1.局部变量
语法
declare{
@varaible_name datatype [,---n]
}
例:
declare @e_mail varchar(50)
declare @lastname varchar(30),@firstname varchar(20),@tel varchar(30)
2.使用set语句为局部变量赋值
语法
set @varaible_name =exPRession
例:
declare @areID int
set @areID=10
print @areID
3.使用select语句为局部变量赋值
语法
select @varaible_name =expression
例:
select @areID=10
一般,set赋值变量的值通常是给定的;而select 赋给变量的值则有查询获得。
4.全局变量
SQL Server 2012常见的全局变量
@@ERROR 返回执行上一条Transact-SQL语句所返回的错误号
@@IDENTITY 返回最后插入的标志值
@@MAX_CONNECTIONS返回SQL SERVER实例所允许同时链接的最大用户数
@@ROWCOUNT 返回上一条语句影响的行数
@@SERVERNAME返回运行SQL SERVER的本地服务器名称
@@SERVICENAME返回SQL SERVER 正在运行的注册表项的名称。若当前实例为默认实例,则@@SERVICENAME返回MSSQLSERVER;若当前实例为命名实例名,则返回该命名实例名
@@TRAMCOUNT返回当前连接的活动实物数
5.BEGIN```END语句
6.IF```条件判断语句
语法
if logical_expression
expression1
[ else
expression2 ]
7.WhILE循环语句
语法
while logical_expression
begin
expression
[break]
[continue]
end
8.CASE选择语句
语法
简单表达式
case input_experssion
when when_experssion then result_experssion
[```n]
[
else else_result_experssion
]
end
选择表达式
case
when boolean_experssion then result_experssion
[```n]
[
else else_result_experssion
]
end
9.使用T-SQL创建视图
create view [ schema_name .] view_name
[ (column[ ,...n ]) ]
as sekect_statement
参数说明如下:
schema_name :视图所属架构名。
view_name:视图名。
column:视图中所使用的列名。
10.使用T-SQL创建索引
create [unique] [clustered | nonclustered ]
index index_name
on table_name (column_name...)
参数说明如下:
unique:表示唯一索引。
clustered:表示聚集索引。
nonclustered :表示非聚集索引,为默认索引。
11.事务
begin transaction:启动事务。
commit transaction:提交事务。
rollback transaction:回滚事务。
12.系统存储过程
-- 常用系统存储过程exec sp_databases; // 查看数据库exec sp_tables; // 查看表exec sp_columns student; // 查看列exec sp_helpIndex student; // 查看索引exec sp_helpConstraint student; // 约束exec sp_stored_procedures;exec sp_helptext 'sp_stored_procedures'; // 查看存储过程创建、定义语句exec sp_rename student, stuInfo; // 修改表、索引、列的名称exec sp_renamedb myTempDB, myDB; // 更改数据库名称exec sp_defaultdb 'master', 'myDB'; // 更改登录名的默认数据库exec sp_helpdb; // 数据库帮助,查询数据库信息exec sp_helpdb master;-- 表重命名exec sp_rename 'stu', 'stud';select * from stud;-- 列重命名exec sp_rename 'stud.name', 'sName', 'column';-- 重命名索引exec sp_rename N'student.idx_cid', N'idx_cidd', N'index';-- 查询所有存储过程select * from sys.objects where type = 'P';select * from sys.objects where type_desc like '%pro%' and name like 'sp%';13.自定义存储过程
语法
[if exists(select * from sysobjects where name='proc_name')
drop proc[edure] proc_name
]
create proc[edure] proc_name
[{@parameter_name data_type}=[默认值]] [output],...,n]
as
procedure_body
exec proc_name [@parameter_name ] [output],...,n]
print ''
新闻热点
疑难解答