/ / जेडीबीसी- पोस्टग्रेज, कनेक्शन से मना कर दिया - postgresql, jdbc

जेडीबीसी- पोस्टग्रेज, कनेक्शन इनकार कर दिया - postgresql, jdbc

जावा का उपयोग करने के लिए यह मेरा पहला समय हैडेटाबेस, इसलिए मुझे शायद यहां एक साधारण गलती है, लेकिन जब मैं रिमोट डेटाबेस से अपना कनेक्शन पुनर्प्राप्त करने के लिए जाता हूं तो मुझे एक्सेस होता है, मुझे कनेक्शन से इनकार कर दिया जाता है।

प्रश्न में कोड यहाँ है:

String url = "jdbc:postgresql:url.isformatted.like.this/database";

try {
conn = DriverManager.getConnection(url, "username", "password");
} catch (SQLException e) {
e.printStackTrace();
System.exit(1);
}

(गोपनीयता के लिए उपयोगकर्ता / पास और डेटाबेस यूआरएल हटा दिया गया)

समस्या क्रेडेंशियल्स या यूआरएल नहीं हो सकती हैस्वयं, जैसा कि मैं psql का उपयोग कर सफलतापूर्वक उसी बॉक्स से लॉग इन करने के लिए इसका उपयोग करता हूं। मैं शायद यह सोच रहा हूं कि शायद यूआरएल का स्वरूपण हो रहा है, लेकिन मुझे दूरस्थ पते पर इस्तेमाल होने वाले psql के किसी भी उदाहरण नहीं मिल सका (वे सभी स्थानीय होस्ट थोड़े चीजें थे)

उत्तर:

उत्तर № 1 के लिए 12

इसके अनुसार http://www.petefreitag.com/articles/jdbc_urls/ मान्य यूआरएल हैं

JDBC: PostgreSQL: डेटाबेस JDBC: PostgreSQL:// मेजबान / डेटाबेस JDBC: PostgreSQL: // host: port / डेटाबेस JDBC: PostgreSQL: // host:? बंदरगाह / डेटाबेस उपयोगकर्ता = उपयोगकर्ता नाम और पासवर्ड = पास JDBC: PostgreSQL: // host:? बंदरगाह / डेटाबेस charset = latin1 और संगत = 7.2

क्या आपके पास होस्ट से पहले // है?


उत्तर № 2 के लिए 1

मैं @ जोनाथन से आपको क्लासपाथ पर पोस्टग्रेएसक्यूएल जेडीबीसी जार लाइब्रेरी रखने के बारे में सहमत हूं: यहां मैंने जो भी उपयोग किया है:

private static final String TABLE_NAME = "tablenamegoeshere";
private static final String DRIVER = "org.postgresql.Driver";
private static final String URL = "jdbc:postgresql://url.for.database/DatabaseName";
private static final String USERNAME = "yourusername";
private static final String PASSWORD = "yourpassword";


private static Connection getConnection() throws Exception {
Class.forName(DRIVER);
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
return conn;
}

जवाब के लिए 0 № 3

मैंने बस अपना कोड विज्ञापन देखा जो PostgreSQL डेटाबेस से जुड़ता है, और ऐसा लगता है:

DriverManager.getConnection(String.format("jdbc:postgresql://%s/%s", server, dbName), userName, password);

साथ ही, सुनिश्चित करें कि आप कनेक्ट करने का प्रयास करने से पहले "PostgreSQL डेटाबेस ड्राइवर लोड कर रहे हैं:

Class.forName("org.postgresql.Driver");

और पोस्टग्रेएसक्यूएल जेडीबीसी जार लाइब्रेरी आपके क्लासपाथ पर है।