2011-05-02 83 views
1

我剛剛完成一個小的java,spring,hibernate應用程序。現在我想把默認值放在數據庫中。像管理員密碼,像這樣的引腳位置。我有.sql文件。如何在第一次加載時將其插入數據庫中。如何初始化具有默認值的數據庫

+0

您可以在SQL – 2011-05-02 07:16:38

+0

使用'DEFAULT'條款擬重複的http://stackoverflow.com/questions/673802/how-to-import-initial-data-to-database-with-hibernate – 2011-05-02 07:21:51

回答

0

可以有不同的解決方案來做到這一點。例如,你可以使用一些XML文件(或任何其他類型的文件,可以有一個架構),其中包含啓動值,並有一個實用工具,將運行並插入數據庫中的值(第一次運行安裝程序時),或者您可以使用SQL腳本具有將這些值插入數據庫的SQL命令。 但還有另一個問題,我想問一下,我認爲這也可能與你有關。如果您想用某些工廠值更新現有數據庫,該怎麼辦?我們是否必須用這些新值替換現有數據,或者我們應該忽略它們,並只插入那些不存在的值。如果是這種情況,我認爲使用管理這個過程邏輯的工具會更合適。

對於我正在維護正在運行的數據庫的公司來說,創建新的數據庫比創建新的數據庫更重要,因此我們使用自定義工具來讀取一些xml文件並決定應該如何處理數據。

+0

thanz您的重播......但我在我的項目中使用休眠。我可以使用hibernate進行數據庫初始化。 – jaleel 2011-05-02 08:41:28

3

Hibernate將無法幫助你,我想,但你總是可以訴諸春天JDBC:

<jdbc:initialize-database data-source="dataSource"> 
    <jdbc:script location="classpath:com/foo/sql/db-schema.sql"/> 
    <jdbc:script location="classpath:com/foo/sql/db-test-data.sql"/> 
</jdbc:initialize-database> 

參見:12.9.1 Initializing a database instance using Spring XML