当我尝试在Oracle SQL Developer中执行以下SQL语句时:
CREATE TABLE Nrom1Tab ( Sig TEXT NOT NULL PRIMARY KEY,
DocSubject TEXT,
DocClassification TEXT,
DepName VARCHAR,
OrgName TEXT,
FromInf TEXT,
ToInf TEXT,
DateInf TEXT,
NoteInf TEXT );
显示此错误:
答案 0 :(得分:5)
我不确定错误信息是什么,但是
TEXT
不是Oracle中的有效数据类型。VARCHAR
是一种有效的数据类型,但您需要指定长度(即VARCHAR(10)
)允许最多10个字节的存储空间(假设默认NLS_LENGTH_SEMANTICS
为{{1} }})。通常最好使用BYTE
数据类型而不是VARCHAR2
。答案 1 :(得分:2)
我相信错误抱怨错过左括号,我很生气,因为VARCHAR没有定义长度。错误引用列113,它是左括号应的位置,即该行的第114个字符。
Justin也正确地指出TEXT不是有效的数据类型。虽然我认为这不会导致你看到的错误,但很快就会出错:)
答案 2 :(得分:1)
我相信你必须给VARCHAR一个像VARCHAR(50)的数量。
答案 3 :(得分:1)
CREATE TABLE Nrom1Tab
(
Sig TEXT PRIMARY KEY, DocSubject TEXT, DocClassification TEXT,
DepName VARCHAR(100), -- Missing LENGTH
OrgName TEXT, FromInf TEXT, ToInf TEXT, DateInf TEXT, NoteInf TEXT );