批量添加SQL值的引号

时间:2010-10-22 10:15:50

标签: sql-server

不确定这是否是一个合适的“编程”问题,但它的相关性。 有没有办法通过SQL或excel甚至为大量的值添加引号,例如我想将值a,b,c,d,e,f,g,j等添加到表中是否有办法我可以自动为它们添加引号吗?如'a','b'等...

我有这个问题,特别是在我的select * from table中,其中列为''value1','value2')...

...谢谢

3 个答案:

答案 0 :(得分:1)

我通常使用Excel处理这类问题 - 如果在列中输入源值,则可以使用Excel公式将值与它们周围的引号连接起来(例如= CONCATENATE(“'”,A1, “'”)),甚至扩展它以构建完整的SQL语句。

答案 1 :(得分:0)

不确定这是否有帮助或者您要问的是什么,但对于此类查询,您应该使用参数,例如

SELECT ... WHERE column IN (?,?)

这不仅是一种简单的方法,而且还意味着如果有人在他们给你的值中添加单引号,那么查询的形式就不会改变 - 这就是SQL注入安全攻击的发生方式。

答案 2 :(得分:0)

如果您在另一个表的同一列中有值,则可以使用选择查询

select '''' + cast(ValueColumn as nvarchar) + '''' as QuotedVal from MyTable

然后进行复制/粘贴