(SQL)如何将exec执行结果放入外面的变量中--动态sql语句
动态sql语句基本语法
1 :普通SQL语句可以用Exec执行
eg: Select * from tableName
Exec('select * from tableName')
Exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N
2:字段名,表名,数据库名之类作为变量时,必须用动态SQL
eg:
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 -- 此句会报错,@s不是nvarchar类型
declare @s Nvarchar(1000) -- 注意此处改为nvarchar(1000)
set @s = 'select ' + @fname + ' from tableName'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句正确
3. 输出参数
declare @num int,
@sqls nvarchar(4000)
set @sqls='select count(*) from tableName'
exec(@sqls)
--如何将exec执行结果放入变量中?
declare @num int, @sqls nvarchar(4000)
set @sqls='select @a=count(*) from tableName '
exec sp_executesql @sqls,N'@a int output',@num output --定义@a为输出变量,@num 获取变量
select @num
分享到:
相关推荐
SQL_EXEC_命令用法,做注入的可以用
SqlServer中,用exec处理sql字符串中含有变量,提示:必须声明标量变量@(已解决!) 代码如下:declare @tssj nvarchar(100) — 外部变量declare @Sql_Sql nvarchar(100) — 存sql字符串变量 set @Sql_Sql =N’...
注意:在执行拼接SQL 语句的时候,的EXEC括号中只允许包含一个字符串变量,但是可以串联多个变量,如果我们直接执行这个SQL语句: --这是错误的调用 EXEC ('SELECT * FROM '+QUOTENAME(@TableName) +'WHERE...
sql行列互转,存储过程中带输入和输出参数的用法,如何将exec执行结果放入变量中
1 :普通SQL语句可以用Exec执行 eg: Select * from tableName Exec( select * from tableName ) Exec sp_executesql N select * from tableName -- 请注意字符串前一定要加N 2:字段名,表名,数据库名之类...
此BAT脚本可以帮助开发人员将某文件夹下所有SQL脚本按文件名依次在指定数据库中批量执行。并且生成日志文件,可查看执行过的所有脚本名称和错误信息。 注意: (1) 使用前需确保已将sqlcmd加入到系统环境变量中。 (2...
SQL Server EXEC和sp_executesql的区别
由于sql文件过大,超过了100M,再数据库的窗口执行,结果超出内存了,对于特别大的sql文件可以使用sqlcmd进行执行 ###1.打开cmd窗口 运行–cmd–进入到sql文件所在的文件夹。 如果是win7可按Shift+右键 在此窗口打开...
如何将SQL400执行结果或执行脚本输出为output file\如何将SQL400执行结果或执行脚本输出为output file
sqlserver 批量执行指定文件夹下面的sql文件。 非常快捷方便,使用于不同类型数据库之间的数据迁移
Mybatis中执行String类型的自己拼写的sql,不执行配置文件中的sql mybatis sql connection mybatis中使用sql,不实用配置文件中的sql实例
SQL中局部变量全局变量详解.doc
动态SQL 并且把返回的值赋给变量,sp_executesql,动态sql语句基本语法
C# 执行SQL SERVER SQL脚本
资源名称:SQLServer中临时表与表变量的区别内容简介: 本文档主要讲述的是SQLServer中临时表与表变量的区别;希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看。资源截图: 资源太大,传百度网盘了,...
注意如何查询sql自动绑定变量,执行以上sql分析执行情况
程序连接sqlserver用的是jtds,mysql和oracle的数据库连接驱动类请自行放到程序里:src/libs下(这里不支持重新上传文件(:)。 可根据需要,自行修改源代码,程序功能有限,不喜勿喷,有问题请留言或者私信。
C#ADO.NET中如何在要执行的sql语句中使用变量
动态SQL与绑定变量 动态SQL与绑定变量
用于SQLServer的sql脚本批量执行,会记录每次执行的脚本和执行结果。可以调整脚本执行顺序,支持脚本可视化,及关键字变色