因为我正在尝试在SQL Developer中创建此表
CREATE TABLE CARTECREDIT
(
forfaitID INTEGER,
nomForfait VARCHAR(13) NOT NULL ,
cout NUMBER(10,4),
locationMax SHORTINTEGER NOT NULL,
dureeMax SHORTINTEGER NOT NULL,
PRIMARY KEY (forfaitID)
);
我正面临此错误消息
错误报告 -
ORA-00902:数据类型无效
00902. 00000 - “无效的数据类型”
*原因:
*操作:
似乎SQL Developer无法识别SHORTINTEGER
,因为它们未以蓝色突出显示
但根据文档Oracle Documentation,SHORTINTEGER
是一个真实的数据类型
我做错了什么?
答案 0 :(得分:1)
不支持SHORTINTEGER。 您正在链接OLAP Datawerehouse中使用的数据类型的文档。
此处指定了Oracle 10的数据类型
https://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements001.htm#i54873
如果要使用Oracle Native数据类型,则应使用NUMBER(可选择指定精度和比例)和VARCHAR2而不是VARCHAR
但是,您也可以使用ANSI数据类型,例如INTEGER,INT,SMALLINT,VARCHAR。但我建议你使用Oracle原生数据类型。
答案 1 :(得分:0)
我经常使用数字,而没有指定精度和比例。它使用起来更舒服。但马西莫的回答是欺负性的:)