2012-08-09 68 views
0

我試圖通過設置當我執行它嵌入H2數據庫到我的春天應用項目中的applicationContext.xml腳本文件

<jdbc:embedded-database id="embeddedDataSource" type="H2"> 

<jdbc:script location="classpath:data.sql"/> 

</jdbc:embedded-database> 

下它顯示data.sql file.But語法錯誤這個文件是來自工作mysql數據庫的備份文件。h2是否支持mysql備份腳本文件。可以給我一個h2腳本文件的例子。

它顯示的錯誤是

Syntax error in sql statement "create database[*] ""test"" ";expected "OR,FORCE,VIEW,ALIAS,SEQUENCE,USER,TRIGGER,ROLE,SCHEMA,CONSTANT"; sql statement: 

我data.sql包含

create database 'test'; 

回答

1

H2是不是100%兼容與MySQL以同樣的方式,其他數據庫,如Oracle,MS SQL Server中, PostgreSQL等都是也是不與MySQL 100%兼容。只有MySQL與MySQL 100%兼容。如果您想運行爲MySQL編寫的SQL語句,那麼您需要確保它們不包含任何H2不支持的語法。

它顯示了語法錯誤

你能後呢?

任何人都可以給我一個h2腳本文件的例子。

支持的語法是documented on the H2 web site

+0

什麼是在h2.is中創建一個名爲test的新數據庫的語法,就像創建數據庫'test'一樣; – elvisanandkumar 2012-08-09 05:30:02

+1

如果你閱讀H2文檔,你會發現沒有'create database'語句,如果數據庫不存在,數據庫會自動創建。 – 2012-08-09 07:12:09