IN 语句中的数据上下文 ExecuteCommand 参数

2024-04-30

运行自定义的最佳方式是什么sql声明使用IN从 C# LinQ 到 sql 数据上下文?我努力了:

db.ExecuteCommand(
   "UPDATE tblCard SET used = 1 WHERE id IN ({0}) AND customer_id = {1}",
   Request.Form["ids"], customer_id
);

对于通过表单传递的 1 项来说这是可以的,但是如果我通过例如“2,1”发布,那么我会得到一个sqlclient例外:

将 nvarchar 值“2,1”转换为数据类型 int 时转换失败。

如果我使用 string.format 插入参数,它可以正常工作,但显然这对 sql 注入是开放的。


LINQ-to-SQL 不使用串联;这将是以下形式的 TSQL 查询:

WHERE id IN (@p0) 

with @p0 set to '123,456,789'.

通过常规 LINQ,您可以使用Contains. With ExecuteQuery有几种选择;例如,您可以“按原样”传入 CSV,并使用 UDF 在数据库中拆分它,然后加入它:

UPDATE c SET c.used = 1
FROM dbo.SplitCsv({0}) udf
INNER JOIN tblCard c
        ON c.Id = udf.Value
       AND c.Customer_ID = {1}

Where dbo.SplitCsv是互联网上可用的许多此类“分割”udf 之一。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IN 语句中的数据上下文 ExecuteCommand 参数 的相关文章

随机推荐

  • 如何使用AJAX显示数据?

    大家好 我在 ajax 中面临一个问题 我想将此数据显示为 html 中的表格 我如何提取此数据并以 html 表格形式显示它 它只是一个虚拟数据 否则它有很多对象加上嵌套对象帮我 JSON 数据 FullName shahrushabh
  • 求 a/b mod c

    我知道这可能看起来像一个数学问题 但我刚刚在比赛中看到这个问题 我真的很想知道如何解决它 We have 一个 模c and b 模c 我们正在寻找商的值 a b mod c 有任何想法吗 在整数环中模C 这些方程是等价的 A B mod
  • r-project SixSigma ss.rr 在 `row.names<-.data.frame`(`*tmp*`, value = value) 中给出错误:'row.names' 长度无效

    我有下面的数据框 gt str luc data frame 19 obs of 4 variables driver Factor w 16 levels nr 1 nr 10 1 9 10 11 12 13 14 15 16 2 pos
  • SQL Server、C#:事务回滚超时异常

    我有一个奇怪的问题 我有一个 NET 程序 我的处理逻辑需要在 SQL Server 2005 数据库上进行长时间运行的事务 约 20 分钟 没关系 因为没有人并行访问数据库 当出现问题时 事务应该回滚 很少发生并且没有任何可见的模式 th
  • Java hibernate 找不到布尔值验证器

    我有一个服务方法尝试添加一个对象store 冬眠的方法 get 方法适用于此 DAO 和服务类 而添加方法则不起作用 在控制台中没有错误 UrlWhiteListDaoImpl urlDao MapperFacade mapper Auto
  • 棋子层次结构设计:继承与类型字段

    我有一个片段的基类 class piece 和一个包含派生对象的数组 piece board 8 8 优点 通过虚拟函数进行简洁的设计 缺点是 如果我必须在板上找到一块或比较一块 我必须恢复到动态铸造 或 typeid 它很丑陋 并且在发出
  • 为什么 com.ibm.jms.JMSTextMessage 类型的变量会打印截断的内容和省略号 (...)?

    我想了解为什么 com ibm jms JMSTextMessage 类型的变量在转换为字符串时会打印出截断的内容和省略号 我在 JMeter 的 JSR223 Sampler 中有以下代码 import com ibm msg clien
  • 如何设置通知在点击时自行清除?

    如何设置我的通知在点击时自行清除 我已经设置了autoCancel true 但这不起作用 My code Notification n new Notification Builder this setContentTitle Updat
  • UIScrollView停止减速

    在 iPhone 3 0 中立即停止 UIScrollView 减速的最佳方法是什么 我想保持 UIScrollView 的减速 直到它自然停止或用户执行某个操作 无论先发生什么 Thanks 未经测试的建议即将出现 当捕获按钮点击事件时
  • generate_presigned_post 中的 Boto3 InvalidAccessKeyId

    我正在使用 Python 的 Chalice 库创建 AWS Lambda 和 API 我的 AWS 凭证是使用 github 工作流程 aws actions 注入的 它能够chalice deploy 端点正在运行 并且正在完美部署到
  • 何时使用 BlockingCollection 以及何时使用 ConcurrentBag 而不是 List

    The 为什么这个 Parallel ForEach 代码会冻结程序 问题的接受答案 https stackoverflow com a 8365614 2031316建议将列表用法替换为并发包 http msdn microsoft co
  • 自定义半透明 Android ActionBar

    我一直在互联网上搜索 例如 Android 文档 此处的答案等 以寻找我认为相当琐碎的问题的答案 如何实现像中那样的半透明操作栏谷歌音乐 http coreylatislaw com wp content uploads 2011 07 g
  • JPA如何为@OneToMany关系的列添加唯一约束,例如用户名

    我有一个班级Site代表一个网站和一个类User A Site可以有多个Users class Site private int site ID OneToMany with a join table private List
  • 使用 STUN 打孔

    我目前正在尝试通过 Internet 发送 UDP 消息 并且必须为端点 A 和 B 都位于 NAT 后面 设置防火墙 为此 我想使用 STUN 服务器进行打孔 当 A 创建对 STUN 服务器的请求 例如 私有 85 1 1 12 600
  • 按预定义顺序进行 XSLT 节点转换

    如何使转换遵循 xml 节点顺序 xml文件是这样的
  • Objective C 视图到控制器通信

    在视图中接受用户输入然后将其传输到该视图的控制器的正确方法是什么 我知道通知中心是一种选择 但肯定有一种更优雅的方式将数据从视图传输到其控制器吗 非常感谢所有帮助 我总是接受答案 使用委托协议设计模式 或通过子类化目标操作UIControl
  • 通过ant编译jdk

    我想编译jdk文件以包含调试信息 我想使用 ant 因为它包含在我的 NetBeans 环境中 所以我做了以下操作 将 src zip 解压到 tmp 目录中 在我的 tmp 目录中创建了一个非常简单的 build xml 文件 一个默认目
  • 在数组中添加/删除元素时收到通知

    我想在从数组中添加 删除元素时收到通知 如果我们不是在谈论数组 例如要在字符串更改时收到通知 则 swift 中有一个很好的解决方案 private var privateWord String var word String get re
  • 在 emacs 主要模式下正确突出显示

    我正在为一种语言开发 emacs 主要模式 又名mydsl 然而 由于某种原因 使用 xahlee 网站上的技术似乎不起作用 可能是较旧的 emacs 方言 我正在解决的关键问题是 1 突出显示评论不起作用以及 2 使用regexp opt
  • IN 语句中的数据上下文 ExecuteCommand 参数

    运行自定义的最佳方式是什么sql声明使用IN从 C LinQ 到 sql 数据上下文 我努力了 db ExecuteCommand UPDATE tblCard SET used 1 WHERE id IN 0 AND customer i