2015-06-16 47 views
2

我使用HSQL 1.7.2包含應用程序對於某些DOUBLE列使用默認值NaN的表定義。發行,與1.7.2後,HSQL升級到1.8:... DEFAULT '男' 中的database.script改爲... DEFAULT 0E0/0E0導致HsqlException:意外的標記/在HSQL 2.3.2

SET SCRIPTFORMAT TEXT 
SHUTDOWN SCRIPT 

中的database.script文件中出現以下內容:

CREATE TABLE ... DOUBLE DEFAULT 'NaN' NOT NULL ... 

我試圖升級到2.3.2 HSQL,但我首先要升級到1.8。我發現,在升級到1.8後,該文件的database.script有:

CREATE TABLE ... DOUBLE DEFAULT 0E0/0E0 NOT NULL ... 

當我打開這個數據庫HSQL 2.3.2,我得到「的SQLException:錯誤的腳本文件行......」在「/」第一次出現的行上。回溯包括「由:org.hsqldb.HsqlException:意外令牌:/」引起。

我弄了很多double_nan=false,沒有成功。

有沒有人對我有任何建議?

回答

1

支持NaN作爲默認值已在版本2.x中刪除。這將在下次更新中恢復。

暫時將默認值更改爲NULL,並在表上添加TRIGGER以將NULL條目轉換爲NaN。

必須指定屬性hsqldb.double_nan=false或爲數據庫執行語句SET DATABASE SQL DOUBLE NAN FALSE以接受NaN數據值。

相關問題