2014-09-26 1335 views
12

我从Excel电子表格中的客户端获取大量数据库信息。我经常需要将这些数据插入/更新回数据库。Excel转义单元格值中的引号或撇号

我经常使用excel通过串联一组单元来生成插入和更新语句。有时数据中包含文本单元格,其中可能有单引号。如果不仔细处理,这些单引号会使SQL语句断裂。

如何将文本数据中的单引号在通过公式连接一组单元格值时使单引号转义,以便生成的SQL脚本是有效的?

+0

我已经抛出了这里,因为我一直忘记(虽然我可能不会,现在。 ..),并且无法迅速找到答案。 – Mir 2014-09-26 19:38:05

+0

相关:如果您尝试使用VBA替换,此问题可能对您有所帮助。 http://stackoverflow.com/questions/17430938/excel-escaping-single-and-double-quotes – Mir 2014-09-26 19:38:31

+1

查找/替换不工作/诉讼? – pnuts 2014-09-26 19:49:24

回答

18

我已经找到了最好的解决方案是使用以下命令:

=SUBSTITUTE(A1, "'", "''") 

这将两个单引号其中,在T-SQL语句转义字符,并把它当作字符串数据替换所有单引号。

+1

我留下函数翻译指南:http://dolf.trieschnigg.nl/excel/index.php – joseantgv 2015-11-02 12:21:34

-1

使用带双引号的CONCATENATE只需要转义引号。这是做如下: = CONCATENATE(“”“”,“在引号!”,“”“”)