我试图用Spring初始化一个内存H2数据库,使用类似下面的语句:
===Throws SQLException===
CREATE TABLE config (
id INTEGER NOT NULL,
module_id VARCHAR(10) NOT NULL DEFAULT 'global',
...
);
每当我尝试运行项目时,都会抛出SQLException
,说法语错误。经过大量的实验,我注意到当我删除DEFAULT
关键字时,没有抛出任何异常。
===This works===
CREATE TABLE config (
id INTEGER NOT NULL,
module_id VARCHAR(10) NOT NULL,
...
);
更有趣的是,当我删除VARCHAR
上的长度并保留DEFAULT
关键字时,它也起作用。
===This also works===
CREATE TABLE config (
id INTEGER NOT NULL,
module_id VARCHAR NOT NULL DEFAULT 'global',
...
);
所以问题是,是否存在阻止这两者同时指定的东西?