您的位置:首页 > 数据库

行带嵌入参数的sql——sp_executesql

2009-08-30 22:08 246 查看
通常执行sql语句,大家用的都是exec,exec功能强大,但不支持嵌入参数,sp_executesql解决了这个问题。
语法
sp_executesql [@stmt =] stmt[{, [@params =] N'@parameter_name data_type [,...n]' }
{, [@param1 =] 'value1' [,...n] }
]

参数
[[b]@stmt =] stmt

declare @user varchar(1000)
declare @moTable varchar(20)
select @moTable = 'MT_10'declare @sql nvarchar(4000) --定义变量,注意类型
set @sql='select @user = count(distinct userid) from '+@moTable --为变量赋值--执行@sql中的语句
exec sp_executesql @sql ,N'@user varchar(1000) out' --表示@sql中的语句包含了一个输出参数
,@user out --和调用存储过程差不多,指定输出参数值print @user//
加密...............................

alter view tbv
with encryption
as
select id, xml_date from tb_xml exec sp_helptext tbv --对象 'tbv' 的文本已加密
[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: