gpt4 book ai didi

java - postgresql jdbc : FATAL: database does not exist

转载 作者:行者123 更新时间:2023-11-29 14:34:18 24 4
gpt4 key购买 nike

我正在尝试使用以下代码连接到数据库:

import java.sql.SQLException;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;

public class Model {

Connection connection;

Model() {

try {
connection = DriverManager.getConnection("jdbc:postgresql:localhost:5432/deliverp", "kais", "0000");
}
catch (SQLException e) {
e.printStackTrace();
}
}

static {

try {
Class.forName("org.postgresql.Driver");
}
catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

public boolean addClient(Object data[]) {

return true;
}
}

但在运行 Java 程序后,我收到以下堆栈跟踪:

Nov 17, 2017 8:58:24 AM org.postgresql.Driver connect
SEVERE: Connection error:
org.postgresql.util.PSQLException: FATAL: database "localhost:5432/deliverp" does not exist
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2477)
at org.postgresql.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2603)
at org.postgresql.core.v3.QueryExecutorImpl.<init>(QueryExecutorImpl.java:125)
at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:227)
at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:194)
at org.postgresql.Driver.makeConnection(Driver.java:450)
at org.postgresql.Driver.connect(Driver.java:252)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at Model.<init>(Model.java:16)
at DelivERP.<init>(DelivERP.java:42)
at DelivERP.main(DelivERP.java:104)

org.postgresql.util.PSQLException: FATAL: database "localhost:5432/deliverp" does not exist
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2477)
at org.postgresql.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2603)
at org.postgresql.core.v3.QueryExecutorImpl.<init>(QueryExecutorImpl.java:125)
at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:227)
at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:194)
at org.postgresql.Driver.makeConnection(Driver.java:450)
at org.postgresql.Driver.connect(Driver.java:252)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at Model.<init>(Model.java:16)
at DelivERP.<init>(DelivERP.java:42)
at DelivERP.main(DelivERP.java:104)

因此我想通过运行以下测试来确保数据库存在:

kais@debian:~/Documents/DelivERP$ psql deliverp
psql (9.6.4)
Type "help" for help.

deliverp=> \d
List of relations
Schema | Name | Type | Owner
--------+----------------+-------+----------
public | BusinessEntity | table | postgres
public | Client | table | postgres
public | Company | table | postgres
public | Order | table | postgres
public | Product | table | postgres
(5 rows)

deliverp=>

服务器没有找到数据库,虽然它存在,但我觉得很奇怪..

有什么想法吗?

最佳答案

你可以试试:

connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/deliverp", "kais", "0000");

connection = DriverManager.getConnection("jdbc:postgresql:deliverp", "kais", "0000");

关于java - postgresql jdbc : FATAL: database does not exist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47354013/

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