当我在我的oracle JDBC上创建这个表时,我一直收到这条消息,我不知道出了什么问题(但我可以在MySQL服务器上执行此查询)。谁能想知道为什么我要继续这样做?
mapper.Map(src obj, dest obj);
感谢您的帮助。
答案 0 :(得分:0)
好的......我想我已经解决了。
它抱怨说:NULL DEFAULT 0
因此,在我更改为DEFAULT 0之后,在我更改了Oracle数据库兼容性的某些类型后,它才起作用。
答案 1 :(得分:0)
是的,在NULL
之前添加DEFAULT 0
毫无意义,即使添加DEFAULT NULL
也是如此。
因为,如果列没有
DEFAULT
值,则隐含地具有NULL
为默认值。
此外,oracle中没有数据类型INT4
,而是使用INTEGER
:
CREATE TABLE temporarytable (
thetype INTEGER,
acode INTEGER,
acodea INTEGER DEFAULT 0,
aname VARCHAR(50),
anameb VARCHAR(50),
agcodec VARCHAR(16),
agnome VARCHAR(40),
acoded INTEGER,
abname VARCHAR(80),
ancode INTEGER,
clieone VARCHAR(80),
adate DATE,
aqtifromi NUMERIC(20, 6) DEFAULT 0,
avaluei NUMERIC(20, 6) DEFAULT 0,
discxxtt NUMERIC(20, 6) DEFAULT 0,
somemore NUMERIC(20, 6) DEFAULT 0,
gaining NUMERIC(20, 6) DEFAULT 0,
valcms NUMERIC(20, 6) DEFAULT 0,
liqidd NUMERIC(20, 6) DEFAULT 0,
theback NUMERIC(20, 6) DEFAULT 0,
theprct NUMERIC(20, 6) DEFAULT 0,
somesll NUMERIC(20, 6) DEFAULT 0,
theccod INTEGER
);