在REDSHIFT SQL中转义单引号

sta*_*NCT 4 sql escaping sql-insert amazon-redshift single-quotes

我有很多包含单引号的字符串值,我需要将其插入REDSHIFT表中的列.我使用了两个/'''在INSERT语句中转义单引号.

例如

INSERT INTO table_Temp
    VALUES ('1234', 'O\'Niel'), ('3456', 'O\'Brien')
Run Code Online (Sandbox Code Playgroud)

我也使用''而不是'但它一直给我错误"VALUES列表必须具有相同的长度",即没有:每个记录的参数> 2.

你能告诉我们如何解决这个问题吗?

Gor*_*off 11

SQL中的标准是双引号:

INSERT INTO table_Temp (col1, col2)  -- include the column names
    VALUES ('1234', 'O''Niel'), ('3456', 'O''Brien');
Run Code Online (Sandbox Code Playgroud)

您还应该包括与要插入的值对应的列名.这可能是您第二次错误的原因.

  • 该表只有2列,均为VAR CHAR。我也尝试过使用双单引号。没用 (2认同)