创建时缺少右括号 table

Missing right parenthesis at create table

我正在尝试使用 SQL 脚本创建一个基本的 table (Diak),但它一直在第一行给我 ORA-00907。

但是,我创建了另一个具有基本相同结构的 table (Targy),并且创建得很好。

create table Diak (
  Diak_id rowid constraint pk_diak primary key,
  Nev varchar2(100),
  Szul_datum date szul_70_tol constraint check (Szul_datum>= date'1970-1-1'),
  Cim long,
  Kod varchar2(100) constraint uk_diak_kod unique,
  Kezdes_eve number(4) constraint kezdes_88_tol check (Kezdes_eve>= 1988),
  );

create table Targy (
  Targy_id rowid constraint pk_targy primary key ,
  Nev long,
  Kod varchar2(100) constraint uk_targy_kod unique,
  Eloado varchar2(100) default 'Bármi Áron',
  Napok varchar2(100),
  Hely varchar2(100)
  );  

它说"Error starting at line : 1 in command […] 00907. 00000 - "缺少右括号" "。 由于 Targy table 很好,我不知道 Diak table 有什么问题。

(Kezdes_eve>= 1988), 

去掉那个逗号,你就可以开始了。

您没有正确声明 CHECK 约束;只需删除 xxxxx CONSTRAINT 部分,您应该没问题:

create table Diak (
  Diak_id rowid constraint pk_diak primary key,
  Nev varchar2(100),
  Szul_datum date check (Szul_datum>= date'1970-1-1'),
  Cim long,
  Kod varchar2(100) constraint uk_diak_kod unique,
  Kezdes_eve number(4) check (Kezdes_eve>= 1988)
);

Demo on DB Fiddle.

注意:最后一列的声明末尾还有一个逗号,但我认为这是一个错字。