Excel在单元格值中转义引号或撇号

时间:2014-09-26 19:34:12

标签: sql excel replace apostrophe substitution

我从excel电子表格中的客户端获取了大量数据库信息。我经常需要将这些数据插入/更新回数据库。

我经常使用excel通过将一堆单元连接在一起来生成插入和更新语句。有时,数据包括可以在其中包含单引号的文本单元格。如果不仔细处理,这些单引号将使SQL语句中断。

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

4 个答案:

答案 0 :(得分:25)

我找到的最佳解决方案是使用以下内容:

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

这将用两个单引号替换所有单引号,这些引号在T-SQL语句中转义字符并将其视为字符串数据。

答案 1 :(得分:0)

CONCATENATE与双引号一起使用只需要转义引号。这样做如下:

=CONCATENATE("""";"In quotes!";"""")

答案 2 :(得分:0)

类似于Roland:

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

答案 3 :(得分:0)

需要做类似的事情,以便我可以“转义”双引号:

=CONCATENATE(CHAR(34),"hello",CHAR(34))

结果:

enter image description here