You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Cloud SQL插入行时报Column Does Not Exist错误的问题咨询

错误产生原因

核心原因是SQL语法中引号的使用不符合你所用数据库引擎的规范:

  • 如果你使用的是PostgreSQL引擎的Google Cloud SQL(该报错是PostgreSQL的典型报错格式),PostgreSQL语法规定双引号"仅用于标识数据库对象(表、列、索引等的名称),字符串字面量必须使用单引号'包裹。你用双引号包裹插入的字符串值,数据库会将"some_string"解析为列名而非待插入的字符串,因此抛出列不存在的错误。
  • 如果你使用的是MySQL引擎的Google Cloud SQL,当实例开启了ANSI_QUOTESSQL模式时,双引号同样会被解析为标识符的包裹符,而非字符串包裹符,也会触发该报错。
排查与修复方案
  • 第一步优先修改插入语句的引号格式:将所有包裹字符串、时间值的双引号替换为单引号,修正后的语句如下:
insert into table_name (col_1, col_2, col_3) 
values ('some_string', 'some_string_2', '2021-08-01 04:28:00');
  • 若插入的字符串本身包含单引号,使用连续两个单引号即可完成转义,例如插入值为user's data的写法为'user''s data'。
  • 若修改引号后仍有报错,按以下顺序排查:
    • 核对表名、列名的拼写与大小写是否和建表时一致,PostgreSQL默认会将未加双引号的标识符转为小写,若你建表时用双引号定义了大写的列/表名,查询时也需要用双引号包裹对应名称。
    • 确认当前操作的数据库、schema与表所在的库、schema一致,避免误操作其他表。

内容的提问来源于stack exchange,提问作者p_mo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 07:42:01