首页 >数据库 >mysql教程 >为什么我的 Postgres DELETE 查询失败并显示'列”不存在”?

为什么我的 Postgres DELETE 查询失败并显示'列”不存在”?

Mary-Kate Olsen
Mary-Kate Olsen原创
2025-01-10 09:01:42670浏览

Why Postgres DELETE Fails: "column "does not exist"

解决PostgreSQL DELETE语句错误:“列不存在”

在PostgreSQL数据库中执行删除操作时,遇到错误消息“列“不存在”。错误语句如下:

<code class="language-sql">delete from "Tasks" where id = "fc1f56b5-ff41-43ed-b27c-39eac9354323";</code>

此语句意图根据特定“id”值从“Tasks”表中删除一条记录。然而,错误表明系统将“fc1f56b5-ff41-43ed-b27c-39eac9354323”解释为列名而不是标识符。

此问题的原因在于引号使用不一致。在SQL中,双引号(")表示标识符(例如,表名、列名),而单引号(')包含字符常量。在此语句中,双引号同时用于定义表名和要比较的“id”值。

为了解决此问题,请确保字符常量正确地用单引号括起来,而标识符仍然用双引号括起来。以下更正后的语句应该可以成功执行:

<code class="language-sql">delete from "Tasks" where id = 'fc1f56b5-ff41-43ed-b27c-39eac9354323';</code>

以上是为什么我的 Postgres DELETE 查询失败并显示'列”不存在”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn