我試圖使用Liquibase 1.9.5將一些數據加載到HSQLDB數據庫中。我有一個loadData
命令如下:Liquibase數據加載到HSQLDB的序列
<loadData tableName="LIST_ITEM_TYPE" file="data/global/list_item_type.csv">
<column name="ID" type="NUMERIC" />
<column name="NAME" type="STRING" />
<column name="DESCRIPTION" type="STRING" />
</loadData>
在我的CSV數據文件我試圖從現有的序列設置的ID值到下一個值:
id,name,description
next value for SEQ_ITEM_TYPE_ID,Test Name,A test description
然而,這並未」因爲它會產生下面的SQL將不起作用:
INSERT INTO LIST_ITEM_TYPE (id, description, name) VALUES ('next value for SEQ_ITEM_TYPE_ID', 'A test description', 'Test Name')
這是幾乎正確的,除了單引號是Liquibase廣告圍繞next value for SEQ_ITEM_TYPE_ID
原因HSQLDB DED給以下錯誤:
java.sql.SQLException: data exception: invalid character value for cast
如果我刪除sinqle報價和手動運行該SQL,它按預期工作。
所以,我的問題是,如何使用Liquibase loadData
命令從CSV文件中提取數據,同時填充序列中的某一列?
哦,是的,我們正在使用HSQLDB 2.0,如果它很重要的話。 – Andre 2011-01-19 22:06:56