ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 数据库 >> SqlServer >> SQL SERVER 中构建执行动态SQL语句

SQL SERVER 中构建执行动态SQL语句(1/4)

来源:网络整理     时间:2016-01-14     关键词:

本篇文章主要介绍了"SQL SERVER 中构建执行动态SQL语句",主要涉及到方面的内容,对于SqlServer感兴趣的同学可以参考一下: 1 :普通SQL语句可以用exec执行Select * from tableName exec('select * from tableName') exec ...

1 :普通SQL语句可以用exec执行

Select * from tableName 
exec('select * from tableName'
exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N 

2:字段名,表名,数据库名之类作为变量时,必须用动态SQL

SQL SERVER 中构建执行动态SQL语句

declare @fname varchar(20
set @fname = 'FiledName' 
--Select @fname from tableName -- 错误,不会提示错误,但结果为固定值FiledName,并非所要。 exec('select ' + @fname + ' from tableName'-- 请注意 加号前后的 单引号的边上加空格 --当然将字符串改成变量的形式也可 declare @fname varchar(20
set @fname = 'FiledName' --设置字段名 declare @s varchar(1000
set @s = 'select ' + @fname + ' from tableName' 
exec(@s-- 成功 
--
exec sp_executesql @s -- 此句会报错 declare @s Nvarchar(1000-- 注意此处改为nvarchar(1000) (必须为ntext或nchar哐nvarchar类型,不能是varchar类型)set @s = 'select ' + @fname + ' from tableName' 
exec(@s-- 成功 exec sp_executesql @s -- 此句正确 

SQL SERVER 中构建执行动态SQL语句

3. 输入或输出参数 

SQL SERVER 中构建执行动态SQL语句

相关图片

相关文章