gpt4 book ai didi

java - 由 : org. postgresql.util.PSQLException 引起:尝试自动创建数据库时数据库不存在

转载 作者:行者123 更新时间:2023-12-02 09:06:57 25 4
gpt4 key购买 nike

我有这个hibernate.cfg.xml:

<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">org.postgresql.Driver</property>

<property name="connection.url">
jdbc:postgresql://localhost/DatabaseName?createDatabaseIfNotExist=true
&amp;useUnicode=yes&amp;characterEncoding=UTF-8
</property>

<property name="connection.username">postgres</property>
<property name="connection.password">password</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">5</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.PostgreSQL9Dialect</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.internal.NoCachingRegionFactory</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hbm2ddl.auto">update</property>
<mapping class="com.main.User"/>
</session-factory>
</hibernate-configuration>

它应该创建两个表(对于User实体和数据库DatabaseName)。但是,它不会创建数据库,并且会失败并出现以下错误:

sessionFactory = configuration.buildSessionFactory();

如何才能使其自动创建名为 DatabaseName 的数据库?

最佳答案

要创建数据库,您必须手动创建,您可以使用 IDE 或 cmd 来创建数据库

要创建表,您可以使用 create 代替 update

 <!-- Drop and re-create the database schema on startup -->
<property name="hbm2ddl.auto">create</property>

它将创建一个架构,然后如果您不想重新创建表,您将在下次启动时使用更新

关于java - 由 : org. postgresql.util.PSQLException 引起:尝试自动创建数据库时数据库不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59738985/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com