2013-05-28 26 views
20

Desidero che Hibernate crei il file di database (SQLite), ma solo se non esiste.Hibernate: crea il database solo se non esiste

Ora in hibernate.cfg.xml ho questa linea:

<property name="hibernate.hbm2ddl.auto">create</property> 

Il problema è che il file di database è stata la creazione in tutto il tempo, esiste anche il file.

+0

ho provato questo: creare ma è sempre la creazione del database. – MAGx2

+1

Quindi apparentemente non hai controllato il manuale di ibernazione, che spiega le diverse varianti di tale opzione. Per favore ricorda che StackOverflow richiede che tu faccia un minimo di ricerca prima di pubblicare una domanda. – creinig

+0

Ho scritto una soluzione semplice per seguire il link: http://stackoverflow.com/a/25549938/1736002 Puoi usare 'import.sql'. Quindi, se non esiste il database, l'ibernazione crea un nuovo db. – cguzel

risposta

31

provare a passare il valore da update

<property name="hibernate.hbm2ddl.auto">update</property> 
26

Try This:

<property name="hibernate.hbm2ddl.auto">update</property> 

Differenza tra create e update è che, update aggiornerà il database se sono già stati creati tabelle del database e creerà, se non si creano le tabelle del database.

E create creerà tabelle di database. E se le tabelle sono già state create, eliminerà tutte le tabelle e creerà nuovamente le tabelle. In questo caso i tuoi dati andrebbero persi.

È il mio consiglio personale di utilizzare update.