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

PostgreSQL命令行创建表报错:NOT附近语法错误及后续问题

解决PostgreSQL创建RISK_DETAILS表的语法错误

先给出正确的表创建语句示例,你可以对比排查自己的问题:

CREATE TABLE RISK_DETAILS (
    ID SERIAL PRIMARY KEY,
    DATE_RAISED TIMESTAMP NOT NULL,
    PROJECT_NAME VARCHAR(255) NOT NULL,
    RISK_DESCRIPTION TEXT,
    RISK_LEVEL VARCHAR(50)
);

常见报错原因及修复方案:

  • DATE_RAISED处的NOT NULL报错:几乎都是前一个字段末尾遗漏了逗号,导致PostgreSQL解析时把下一行的NOT NULL当成前字段的非法扩展内容。检查上一行字段末尾是否加了逗号。
  • PROJECT_NAME的VARCHAR字段报错:常见原因有两个,一是VARCHAR未指定长度(部分PostgreSQL版本或场景不支持无长度的VARCHAR写法),建议明确写为VARCHAR(255)这类带长度的格式;二是DATE_RAISED字段修改后仍存在语法问题(比如移除NOT NULL后,字段定义末尾漏加逗号),导致后续字段解析失败。

快速排查步骤:

  1. 逐行检查每个字段定义末尾的逗号(最后一个字段不需要加逗号)。
  2. 确认TIMESTAMP、VARCHAR等类型拼写无误,没有笔误。
  3. 避免使用无长度的VARCHAR写法,统一加上合理长度值。
  4. 检查字段名和语句中是否有多余的空格、特殊符号干扰解析。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 11:44:55