【问题标题】:sql oracle missing comma error code ORA-00917sql oracle 缺少逗号错误代码 ORA-00917
【发布时间】:2013-06-25 14:27:38
【问题描述】:

我是新来的,所以我有一个问题要问.. sql oracle 说这个错误 ORA-00917: missing comma 。希望有解决办法

CREATE TABLE ASSIGNMENT (
    ASSIGN_NUM      CHAR(3),
    ASSIGN_DATE     DATE,
    PROJ_NUM        CHAR(3),
    EMP_NUM             CHAR(3),
    ASSIGN_JOB              CHAR(4),
    ASSIGN_CHR_HR       NUMBER(8,2),
    ASSIGN_HOUR         NUMBER(8,2),
    ASSIGN_CHARGE        NUMBER(8,2));

DESCRIBE ASSIGNMENT


INSERT INTO ASSIGNMENT VALUES ('1001','20-MAR-2006','18','103','503','84.50','3.5','295.75';

【问题讨论】:

  • 除了插入末尾缺少的“)”之外,从插入语句中排除列名可能是不好的做法。为什么?一旦有人向表中添加另一列,插入就会中断。此外,在列名中引用表名,例如 ASSIGN_NUM、ASSIGN_JOB、ASSIGN_CHARGE 等,被视为代码“气味”。而是考虑使用 NUM、JOB、CHARGE 等。

标签: sql oracle variable-assignment comma ora-00917


【解决方案1】:

看起来您在 INSERT 语句的末尾缺少一个右括号:

INSERT INTO ASSIGNMENT VALUES ('1001','20-MAR-2006','18','103','503','84.50','3.5','295.75');

【讨论】:

  • 抱歉,我无法得到您的答案。你能写吗?
【解决方案2】:

您在查询结束时错过了right parenthisis

INSERT INTO ASSIGNMENT VALUES (
  '1001','20-MAR-2006','18','103','503','84.50','3.5','295.75';
                                                           ^^^^^ 
                                                       Here you missing )

【讨论】:

    【解决方案3】:

    试试这个插入:

    INSERT INTO ASSIGNMENT VALUES ('1001',TO_DATE('20-MAR-2006','DD-MON-YYYY'),'18','103','503','84.50','3.5','295.75');
    

    【讨论】:

      【解决方案4】:

      试试这个,因为你不能在数字中插入引号:

      INSERT INTO ASSIGNMENT VALUES ('1001',TO_DATE('20-MAR-2006','DD-MON-YYYY'),'18','103','503',84.50,3.5,295.75);

      【讨论】:

        猜你喜欢
        • 2015-11-21
        • 2018-01-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多