Sql 创建表并获取错误,因为ora 00907缺少右括号

Sql 创建表并获取错误,因为ora 00907缺少右括号,sql,Sql,我正在尝试创建一个表,但由于ora 00907缺少右括号而出现错误。出了什么问题 这是我的疑问: CREATE TABLE College ( ID int, NAME varchar(255), Branch var char(255) NOT NULL, Percentage int, Address varchar, City varchar(255), PRIMARY KEY (ID) ); 您有多个错误。大概你想要这样的

我正在尝试创建一个表,但由于ora 00907缺少右括号而出现错误。出了什么问题

这是我的疑问:

CREATE TABLE College (
    ID int, 
    NAME varchar(255), 
    Branch var char(255) NOT NULL,
    Percentage int, 
    Address varchar, 
    City varchar(255),
    PRIMARY KEY (ID)
);

您有多个错误。大概你想要这样的东西:

CREATE TABLE Colleges (
    CollegeID int PRIMARY KEY,
    Name varchar2(255),
    Branch varchar2(255) NOT NULL,
    Percentage int,
    Address varchar2(255),
    City varchar2(255)
);
注:

  • 语法问题是
    var char
    中的空格
  • Oracle建议将
    varchar2()
    置于
    varchar
    之上
  • 定义中应始终包含长度
  • 您可以内联主键定义
  • 我希望主键包含实体名称,而不是通用的
    id
  • 同样,我更喜欢表格的复数形式,因为它包含多个学院
  • 名为
    percentage
    且类型为
    int
    的列可疑

检查分支的类型列您可以检查这个问题的答案,它可能会对您有所帮助。Var char、varchar和syntax走进一个酒吧。他们不久就离开了。只剩下一个空格。两个错误:(1)
varchar
Branch
之后应该是
varchar
。(2) 必须为
地址
提供大小(当前,
varchar
没有大小)。