首页 > 解决方案 > 使用 Vertabelo 中生成的 SQL 代码创建表时缺少右括号错误

问题描述

我想为我的学校项目创建一个数据库。一些表的创建没有错误,但是当我想创建一个更复杂的表时,我遇到了这个错误:

ORA-00907: 缺少右括号

代码如下(表和属性的名称是罗马尼亚语):

CREATE TABLE Curse (
id_cursa int  NOT NULL,
id_tura int  NULL,
moment_inceput_cursa timestamp  NULL,
moment_sfarsit_cursa timestamp  NULL,
adresa_initiala text  NULL,
GPS_punct_start text  NULL,
adresa_destinatie text  NULL,
destinatie_GPS text  NULL,
stare_cursa char NOT NULL DEFAULT 0,
modalitate_plata int  NULL,
pret decimal  NULL,
CONSTRAINT Curse_pk PRIMARY KEY (id_cursa)
);

标签: oracle

解决方案


实际的错误是 DEFAULT 子句出现在 NOT NULL 子句之前。所以这是正确的语法:

stare_cursa char DEFAULT 0 NOT NULL

除此之外,您需要将text数据类型更改为varchar2(1000)您需要的任何长度。


推荐阅读