1.直接上代码

CREATE PROCEDURE [dbo].[TEST]

AS
BEGIN
DECLARE
@con nvarchar(50)='N8-4F', --構建SQL需要的條件
@sql nvarchar(1000),--構建後的SQL語句
@cnt int, --獲取執行結果值
@curTmp nvarchar(50) --查詢滿足條件的個數
SET @sql = 'SELECT @cnt = COUNT(*) FROM [EMPCARDHISTORY] WHERE 1=1 AND [AREA]='''+@con+''''
EXEC sp_executesql @sql,N'@cnt int out',@cnt out --可以獲得@cnt的值 --演示SQL中有傳入參數
SET @sql = ' SELECT @cnt = COUNT(*) FROM [EMPCARDHISTORY] WHERE 1=1 AND [AREA]=@con'
EXEC sp_executesql @sql,N'@cnt int out,@con nvarchar(50)',@cnt out,@con --演示遊標
SET @sql = ' DECLARE cur_getData FOR SELECT EMPNO FROM [EMPCARDHISTORY] WHERE 1=1 AND [AREA]=@'''+@con+''''
EXEC(@sql)
OPEN cur_getData --該處的遊標是我們定義在@sql中的
FETCH NEXT FROM cur_getData INTO @curTmp
WHILE @@FETCH_STATUS = 0
BEGIN
--xxxx
FETCH NEXT FROM cur_getData INTO @curTmp
END END

SQLSERVER 在PROCEDURE 中动态执行SQL语句【EXEC】并获取的更多相关文章

  1. 使用exec和sp_executesql动态执行SQL语句(转载)

    当需要根据外部输入的参数来决定要执行的SQL语句时,常常需要动态来构造SQL查询语句,个人觉得用得比较多的地方就是分页存储过程和执行搜索查询的SQL语句.一个比较通用的分页存储过程,可能需要传入表名, ...

  2. 第二百八十七节,MySQL数据库-条件语句、循环语句、动态执行SQL语句

    MySQL数据库-条件语句.循环语句.动态执行SQL语句 1.if条件语句 delimiter \\ CREATE PROCEDURE proc_if () BEGIN ; THEN ; ELSEIF ...

  3. 动态执行SQL语句,接收返回值

    一.exec和sp_executesql介绍 当需要根据外部输入的参数来决定要执行的SQL语句时,常常需要动态来构造SQL查询语句.比如,一个比较通用的分页存储过程,可能需要传入表名,字段,过滤条件, ...

  4. SQL*PLUS中批量执行SQL语句

    SQL*PLUS中批量执行SQL语句 今天由于工作的需要,要在CMD中批量执行大量的SQL语句,对于Oracle学习还处在入门阶段的我,只能硬着头皮到处去寻找资料(主要是网络资料,也包括自己的电子书) ...

  5. sp_executesql动态执行sql语句并将结果赋值给一变量

    需求场景: 需动态拼接sql语句进行执行,并将执行的结果赋值给一指定变量. 样例代码如下: SELECT @tableName = TAB_NAME FROM dbo.NMR_BLYWBDY WHER ...

  6. ORACLE 查询不走索引的原因分析,解决办法通过强制索引或动态执行SQL语句提高查询速度

    (一)索引失效的原因分析: <>或者单独的>,<,(有时会用到,有时不会) 有时间范围查询:oracle 时间条件值范围越大就不走索引 like "%_" ...

  7. Eclipse中直接执行sql语句(图文说明)

    转自:https://blog.csdn.net/changjyzzu/article/details/45487847 1.首先新建sql文件,然后打开文件 22.右键点击空白处,点击set-con ...

  8. mysql 存储过程动态执行sql语句

    之前经常在程序中拼接sql语句,其实我们也可以在存储过程中拼接sql 语句,动态的执行~~ 代码如下: DROP PROCEDURE IF EXISTS SearchByDoctor;CREATE P ...

  9. 动态执行SQL语句

    在实际制作过程中,需要动态的拼接SQL语句然后执行.具体代码如下: declare @columnName varchar(20),@tempName varchar(20) select @temp ...

随机推荐

  1. vgg16 感受野计算

    code: vgg_16 = [ [3, 1], [3, 1], [2, 2], [3, 1], [3, 1], [2, 2], [3, 1], [3, 1], [3, 1], [2, 2], [3, ...

  2. Linux 时间同步 Chrony

    chrony 是网络时间协议(NTP)的通用实现. chrony 包含两个程序:chronyd 是一个可以在启动时启动的守护程序.chronyc 是一个命令行界面程序,用于监视 chronyd 的性能 ...

  3. vue-cli项目模板的一些思考

    之前有个想法,就是要利用vue写一套ui.然后当时也没有搞清楚到底怎么写. 几经周转吧,通过付费的方式在gitbook上面找到了答案. 找到答案之后再看我们正在开发的项目,看伙伴写的代码,突然发现完全 ...

  4. 阶段5 3.微服务项目【学成在线】_day04 页面静态化_10-freemarker静态化测试-基于模板文件静态化

    把resource拷贝到test目录下 只保留文件夹结构和test1.ftl这个模板文件就可以了. 新建一个包 编写测试类 使用freemaker提供的方法生成静态文件 Configuration是i ...

  5. SQL查询交集、并集、差集

     两个表A  和表 T          交集 intersect 并集   UNION SQL:select df from A union select sd from T; 在Union后不加A ...

  6. 使用java NIO及高速缓冲区写入文件

    byte[] bytes = Files.readAllBytes(Paths.get("E:\\pdf\\aaa\\html\\text.txt").normalize()); ...

  7. HBase管理与监控——HMaster或HRegionServer自动停止挂掉

    问题描述 HBase在运行一段时间后,会出现以下2种情况: 1.HMaster节点自动挂掉: 通过jps命令,发现HMaster进程没了,只剩下HRegionServer,此时应用还能正常往HBase ...

  8. MLN 讨论 —— inference

    We consider two types of inference: finding the most likely state of the world consistent with some ...

  9. ivy使用Maven阿里云镜像的问题

    ivy默认使用的Maven仓库下载速度有点慢,所以想改成国内的,添加如下resolver: <ibiblio name="working-chinese-mirror" ro ...

  10. ps命令入门使用指南

    声明:本文算不上原创,主要是参考和整理了该博客ps命令详解 Shell 命令: ps [options] [--help] ps 常用参数: l 长格式输出: u 按用户名和启动时间的顺序来显示进程: ...