sqlserver 针对预处理sql传入参数的处理方式
USE [OA]GO/****** Object: StoredProcedure [dbo].[usp_oa_UserMessageProve_Update] Script Date: 12/02/2014 10:45:19 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO/*功能:更新用户证明数据,更新用户证明状态2014.10.28 16:14 am*/ALTER PROC [dbo].[usp_oa_UserMessageProve_Update]@msgid VARCHAR(10),@userid VARCHAR(10),@state VARCHAR(10),@remark VARCHAR(200),@filepath VARCHAR(200)ASbeginDECLARE@tablename VARCHAR(100),@provered INT,@sqlstr NVARCHAR(1000),@provepath VARCHAR(1000),@NOT_PROVE INT --未证明,@CANNOT_PROVE INT --无法完成,@HAS_PROVE INT --已证明--无法证明更新SELECT @NOT_PROVE=56,@CANNOT_PROVE=58,@HAS_PROVE=57select @tablename=tablename from ADM_F_GETUSERREADTABLE (@userid)IF @state = '1' -- state =1 执行无法证明操作BEGINSET @sqlstr = 'update '+@tablename+' set proveremark='''+@remark+''',provered='+CAST(@CANNOT_PROVE AS VARCHAR(10))+ ' where UserID='+@userid + ' and MessageID='+@msgidEXEC(@sqlstr)ENDELSE IF @state = '2' -- state = 2 执行 按钮证明操作BEGINSET @sqlstr = 'update '+@tablename+' set provered='+CAST(@HAS_PROVE AS VARCHAR(10))+ ' where UserID='+@userid + ' and MessageID='+@msgidEXEC(@sqlstr)ENDELSE IF @state = '3' -- state = 3 执行 文件路径更新操作BEGINSET @sqlstr = 'update '+@tablename+' set provered='+CAST(@HAS_PROVE AS VARCHAR(10))+',provepath = isnull(provepath,'''')+ '''+@filepath+','' where UserID='+@userid + ' and MessageID='+@msgidEXEC(@sqlstr)ENDELSE IF @state = '4' -- state = 4 执行文件删除更新操作BEGINSET @sqlstr = 'select @provepath=provepath from '+@tablename+' where UserID='+@userid + ' and MessageID='+@msgidEXEC sp_executesql @sqlstr,N'@provepath VARCHAR(1000) output',@provepath OUTPUTSET @provepath= REPLACE(@provepath,@filepath+',','')SET @sqlstr = 'update '+@tablename+' set provepath = '''+@provepath+''''IF @provepath = ''BEGINSET @sqlstr +=',provered='+CAST(@NOT_PROVE AS VARCHAR(10))ENDSET @sqlstr +=' where UserID='+@userid + ' and MessageID='+@msgidPRINT @sqlstrEXEC(@sqlstr)ENDEND
sqlserver 针对预处理sql传入参数的处理方式的更多相关文章
- django模板传入参数的处理方式与反向生成url
前端模板传入参数的处理方式 1.传入单个参数: 前端使用href="/sel-{{ row.0 }}.html, url使用url(r'sel-(.+).html',home.index), ...
- mysql 5.7.20 动态sql 传入参数
drop procedure test; delimiter ;; CREATE procedure test() -- 取动态sql的值 -- 目前只测试出,在 where 后面, 可以用 ?,类似 ...
- sql 传入参数为逗号分隔的字符串处理方法
写了个存储过程,中间用到了类似这种写法 Select * From User Where ID In('1,2,3') 其中'1,2,3'是从外面传进来的参数,就这样执行报错:'1,2,3'转换为in ...
- [ Database ] [ Sybase ] [ SQLServer ] sybase 與SQL Server的界接方式
目前我們有個專案Server A安裝了 SQL Server 2012,有個需求需要連線到另外一台Server B上的 Sybase 12.5的view, 先前試過了很多方法都無法連通.主要的原因是因 ...
- C#中SQL语句参数写法
OracleConnection oc=new OracleConnection("data source=osserver;User Id=****;password=**"); ...
- MyBatis传入参数为集合、数组SQL写法
参考:http://blog.csdn.net/small____fish/article/details/8029030 foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合 ...
- 动态sql语句和动态传入参数个数
1.可以将要传入的几个参数封装成一个实体类,然后将实体类作为一个参数传入到相应的方法中,这时候就需要这sqlMapper.xml文件中对传入的字段利用<if test=""& ...
- SQLSERVER procedure 传入参数为DataTable类型 C#该怎么写
以上为数据库中存储过程传入参数为table类型 table类型在数据库中存在为: 最后在C#实现方式为:
- 预处理(防止sql注入的一种方式)
<!--- 预处理(预编译) ---><?php/* 防止 sql 注入的两种方式: 1. 人为提高代码的逻辑性,使其变得更严谨,滴水不漏. 比如说 增加判断条件,增加输入过滤等,但 ...
随机推荐
- mysql-cluster 7.3.5-linux 安装
[集群环境] 管理节点 10.0.0.19 数据节点 10.0.0.12 10.0.0.17 sql节点 10.0.0.18 10.0.0 ...
- 从零开始学做微信小程序,看这些就够了!
随着正式开放公测,微信小程序再次万众瞩目,越来越多的企业和个人涌入到小程序开发的大军中.小程序究竟是什么?适合做小程序的产品有哪些?做小程序需要提前准备什么?如何零基础学做小程序?此文,将列出OSC上 ...
- Androidmanifest.xml在Android项目中的作用
以下是一个项目中的AndroidManifest.xml文件: <?xml version="1.0" encoding="utf-8"?> < ...
- linux(red hat)下安装jenkins
Jenkins的安装能够分为在线安装和下载软件本地安装.我这里用的是另外一种方法,将其下载后是一个应用程序直接点击安装就能够.等安装完后配置一下jdk的路径就ok啦!接下来进行具体的说明: 一.前提 ...
- MSSQL-SQL SERVER还原与备份(导入与导出)
备份: 使用Microsoft SQL Server Management Studio查询出想要的列和结果, 在结果处左上角点击, 软件会自动选中查询出的所有结果, 然后右键"将结果另存为 ...
- Android开发之Service的远程调用
在Andorid平台中,各个组件运行在自己的进程中,他们之间是不能相互访问的,但是在程序之间是不可避免的要传递一些对象,在进程之间相互通信.为了实现进程之间的相互通信,Andorid采用了一种轻量级的 ...
- INFORMATION_SCHEMA数据库介绍
删除mysql数据库某一张主键表的所有外键关系 SELECT CONCAT('alter table ', TABLE_NAME , ' drop foreign key ', constraint_ ...
- 转 web前端性能分析--实践篇
当我们知道了web前端性能的关键点后,那么接下来要做的就是如何去具体实施并获取这些关键点的数据了.通过前面的学习知道了不少好的工具,经过对比后个人觉得dynatrace还是不错的. 不仅支持ie,ff ...
- RHEL6 - 图形化设置IP
RHEL6下我们除了麻烦地修改网卡的主配置文件外,还可以通过setup,system-config-network等工具指令打开网卡的图形化界面 #setup #system-config-net ...
- hdu 1999 不可摸数 筛选素数 两次打表
不可摸数 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...