动态 SQL 逗号分隔值查询

2023-11-28

[更新:使用 SQL Server 2005]

您好,我想要做的是使用逗号分隔的值 (ids) 列表查询我的存储过程以检索数据行。

我收到的问题是转换错误:

Conversion failed when converting the varchar value ' +
@PassedInIDs + ' to data type int.

我的 where 子句和错误中的语句是:

...
AND (database.ID IN (' + @PassedInIDs + '))

注意:database.ID是int类型。

我正在关注这篇文章:

http://www.sql-server-helper.com/functions/comma-delimited-to-table.aspx

但由于错误而没有完成。

在我的执行脚本中,我有:

...
@PassedInIDs= '1,5'

我在这里做错了什么吗? 感谢您的帮助。


我强烈建议您使用该链接中的第二种方法。创建一个用户定义的函数,将逗号分隔的字符串转换为表格,然后您可以轻松地从中进行选择。

如果你用 Google 搜索 Erland 和“Dynamic SQL”,他对其中的陷阱有很好的描述。

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

动态 SQL 逗号分隔值查询 的相关文章

随机推荐