运行sql命令行,问题。创建表

运行sql命令行,问题。创建表,sql,oracle,create-table,Sql,Oracle,Create Table,我试图在oracle database 11 xe的run sql命令行中创建一个表 我的问题是当我输入完代码时: create table vigilantes( idVigilantes integer(3) not null, nombre varchar(100) not null, paterno varchar(100) not null, materno varchar(100) not null, id_caseta integer(3) null, id_turno integ

我试图在oracle database 11 xe的run sql命令行中创建一个表

我的问题是当我输入完代码时:

create table vigilantes(
idVigilantes integer(3) not null,
nombre varchar(100) not null,
paterno varchar(100) not null,
materno varchar(100) not null,
id_caseta integer(3) null,
id_turno integer(3) null,
edad integer(3) not null,
id_genero integer(1) not null,
idEmpresa integer(3) not null,
constraint pk_idVigilantes PRIMARY KEY (idVigilantes)
constraint fk_id_caseta FOREIGN KEY (id_caseta)
references Caseta(id_caseta)
constraint fk_id_turno FOREIGN KEY(id_turno)
references Turno(id_turno)
constraint fk_id_genero FOREIGN KEY(id_genero)
references Generos(id_genero)
constraint fk_idEmpresa FOREIGN KEY(idEmpresa)
references Empresa(idEmpresa)
);
我遇到了“ORA-00907:缺少右括号”的问题。 我了解到,这通常是由于没有定义值造成的。 e、 g:

但这里仍然没有解决办法。
任何帮助或线索都会有很大帮助。

约束后缺少逗号。而且,
integer
没有精度

create table vigilantes (
    idVigilantes integer not null,
    nombre varchar(100) not null,
    paterno varchar(100) not null,
    materno varchar(100) not null,
    id_caseta integer null,
    id_turno integer null,
    edad integer not null,
    id_genero integer not null,
    idEmpresa integer not null,
    constraint pk_idVigilantes primary key (idVigilantes),
    constraint fk_id_caseta foreign key (id_caseta) references Caseta(id_caseta),
    constraint fk_id_turno foreign key (id_turno) references Turno(id_turno),
    constraint fk_id_genero foreign key (id_genero) references Generos(id_genero),
    constraint fk_idEmpresa foreign key (idEmpresa) references Empresa(idEmpresa)
    );
如果必须定义精度,请使用数据类型:

create table vigilantes (
    idVigilantes number(3, 0) not null,
    nombre varchar(100) not null,
    paterno varchar(100) not null,
    materno varchar(100) not null,
    id_caseta number(3, 0) null,
    id_turno number(3, 0) null,
    edad number(3, 0) not null,
    id_genero number(1, 0) not null,
    idEmpresa number(3, 0) not null,
    constraint pk_idVigilantes primary key (idVigilantes),
    constraint fk_id_caseta foreign key (id_caseta) references Caseta(id_caseta),
    constraint fk_id_turno foreign key (id_turno) references Turno(id_turno),
    constraint fk_id_genero foreign key (id_genero) references Generos(id_genero),
    constraint fk_idEmpresa foreign key (idEmpresa) references Empresa(idEmpresa)
    );

请注意标签(张贴时,标签位于底部);网站随机添加了一些,为您添加了MySQL和数据库。确保编辑该零件,只保留相关零件。我现在就为你做,但以后请记住。谢谢哦,现在我明白了。非常感谢。可以。我尝试了我的代码和你的回复,现在在constranis后加上逗号,你在fk的最后一个约束中也漏掉了一个逗号,但仍然得到了“ORA-00907:缺少右括号”。@Edgarecko7-在最后一个约束后不会有任何逗号。此外,还缺少整数数据类型(定义了大小)。更新了答案。请现在再试?我试过了,但现在得到的数据类型无效。正如您所说,我将整数类型更改为数字。对于外键约束中引用的其他表的列,您需要具有相同的数据类型。我在没有FK的情况下试过,两个都对我有效。我必须检查所有的数据库设计,我得到的1有很多错误。现在我重新输入了所有的表,只有5个,但是现在,多亏了你,在你关于逗号和数据类型的帮助下,我解决了这个问题。非常感谢。古尔夫。
create table vigilantes (
    idVigilantes number(3, 0) not null,
    nombre varchar(100) not null,
    paterno varchar(100) not null,
    materno varchar(100) not null,
    id_caseta number(3, 0) null,
    id_turno number(3, 0) null,
    edad number(3, 0) not null,
    id_genero number(1, 0) not null,
    idEmpresa number(3, 0) not null,
    constraint pk_idVigilantes primary key (idVigilantes),
    constraint fk_id_caseta foreign key (id_caseta) references Caseta(id_caseta),
    constraint fk_id_turno foreign key (id_turno) references Turno(id_turno),
    constraint fk_id_genero foreign key (id_genero) references Generos(id_genero),
    constraint fk_idEmpresa foreign key (idEmpresa) references Empresa(idEmpresa)
    );