使字符串参数安全地用在动态查询中
2007-05-22 21:51
260 查看
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER FUNCTION [dbo].[fnSafeDynamicString]
-- make string parameters safe for use in dynamic strings
(@chvInput varchar(8000),
@bitLikeSafe bit = 0) -- set to 1 if string will be used in LIKE
RETURNS varchar(8000)
AS
BEGIN
declare @chvOutput varchar(8000)
-- replace single quote
set @chvOutput = Replace(@chvInput, char(39), char(39) + char(39))
if @bitLikeSafe = 1
begin
-- convert square bracket
set @chvOutput = Replace(@chvOutput, '[', '[[]')
-- convert wild cards
set @chvOutput = Replace(@chvOutput, '%', '[%]')
set @chvOutput = Replace(@chvOutput, '_', '[_]')
end
RETURN (@chvOutput)
END
相关文章推荐
- 如何获取浏览器URL中查询字符串的参数
- 多条件查询--使用dapper命令参数动态拼接出最安全的sql语句
- 参数模板模糊查询数据与字符串组过滤展现数据
- hibernate通过判断参数动态组合Hql语句,生成基本通用查询
- 【分页查询】页面传入动态参数,DAO层多表查询实例
- 解析地址栏中的查询字符串参数,返回对象
- Redis_慢查询日志与简单动态字符串
- 如何获取浏览器URL中查询字符串的参数?
- JPA 2.0 中的动态类型安全查询
- 如何用js获取浏览器URL中查询字符串的参数
- 前台传入多个参数(数组格式),拼接成字符串中间用逗号隔开,传入到sql中用in查询.
- 由于带参数的模糊查询不识别加点的字符串
- 动态参数查询
- onclick时间动态传递参数,拼接字符串参数
- 解决Asp.net Web网站发布到服务器上运行时,某界面传参数过多,造成的“此请求的查询字符串的长度超过配置的 maxQueryStringLength 值”错误。
- 用VSTA动态改变infopath数据源查询参数与反回查询结果
- 使用ADF-BC 实现查询功能之四:通过代码动态设置Where条件参数
- JavaScript GET请求向 URL 末尾添加查询字符串参数
- JMeter怎么在get URL请求、POST请求中添加动态参数用于服务器段安全验证