hbm2ddl.auto 是Hibernate自動建表的核心屬性有四個可選值,create,create-drop,update,validate;mysql
四個值分別表示以下:sql
create:啓動時刪數據庫中的表,而後建立,退出時不刪除數據表數據庫
create-drop:啓動時刪數據庫中的表,而後建立,退出時自動刪除全部表spa
update:自動修改,若是表結構與實體類不一致,那麼就修改表使它們一致,數據會保留hibernate
validate:自動校驗,若是表結構與實體類不一致,那麼不作任何操做,報錯ci
可是,在實際開發中卻會碰到沒法自動建立數據庫表的狀況,其可能緣由是:開發
1.因爲實體類的屬性中出現了sql關鍵字it
2.因爲實用的數據庫方言和本地mysql數據庫不匹配,能夠更換再嘗試。io
數據庫方言以下:百度
MySQL : org.hibernate.dialect.MySQLDialect
MySQL with InnoDB : org.hibernate.dialect.MySQLInnoDBDialect
MySQL with MyISAM : org.hibernate.dialect.MySQLMyISAMDialect
Oracle (any version) : org.hibernate.dialect.OracleDialect
Oracle 9i/10g : org.hibernate.dialect.Oracle9Dialect
更多版本請自行百度。