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

ORA-00907:缺失右括号错误求助,CREATE TABLE语句故障排查

解决ORA-00907: missing right parenthesis错误的排查结果

我帮你仔细梳理了你的CREATE TABLE语句,找到了引发ORA-00907错误的三处问题,具体如下:

  • CHECK约束逻辑缺失关键字:在tipo字段的CHECK约束中,tipo = 'B-'后面漏掉了OR关键字,导致逻辑表达式语法断裂,数据库无法正确解析括号匹配。
  • 字段长度定义错误:id_sal字段的长度写成了1O(字母O),而不是数字10,这属于语法错误,干扰了语句的正常解析。
  • 约束名称重复:最后一个外键约束的名称san_tipo_pruebas_pk和前面的主键约束名重复了,Oracle不允许同一表内存在同名约束,这也会导致语句执行失败。

修正后的完整CREATE TABLE语句

CREATE TABLE sangre ( 
    id_pruebas VARCHAR2(10) CONSTRAINT san_id_pruebas_pk PRIMARY KEY, 
    tipo VARCHAR2(5) NOT NULL CONSTRAINT san_tipo_pruebas_check CHECK (tipo = 'O-' OR tipo = 'O+' OR tipo = 'A-' OR tipo = 'A+' OR tipo = 'B-' OR tipo = 'B+' OR tipo = 'AB-' OR tipo = 'AB+'), 
    fecha DATE NOT NULL, 
    id_sal VARCHAR2(10) NOT NULL, 
    id_paciente NUMBER(8) NOT NULL CONSTRAINT san_id_paciente_ck CHECK (id_paciente >= 0), 
    id_enfermero VARCHAR2(10) NOT NULL, 
    CONSTRAINT san_id_enfermero_fk FOREIGN KEY (id_enfermero) REFERENCES enfermero (id_enfermero), 
    CONSTRAINT san_id_paciente_fk FOREIGN KEY (id_paciente) REFERENCES paciente(id_paciente), 
    CONSTRAINT san_id_sal_fk FOREIGN KEY (id_sal) REFERENCES laboratorio(id_sal)
);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 11:58:14