जावा के साथ एक MySQL डेटाबेस से कैसे कनेक्ट करें

जावा के साथ एक MySQL डेटाबेस से कैसे कनेक्ट करें

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





जबकि कोर जेडीबीसी एपीआई जावा में शामिल है, एक विशेष डेटाबेस जैसे कि MySQL या SQL सर्वर से कनेक्ट करने के लिए डेटाबेस ड्राइवर के रूप में जाना जाने वाला एक अतिरिक्त घटक की आवश्यकता होती है। यह डेटाबेस ड्राइवर एक सॉफ्टवेयर घटक है जो कोर JDBC कॉल को उस डेटाबेस द्वारा समझे गए प्रारूप में अनुवादित करता है।





यूट्यूब पर देखने के लिए सबसे अच्छी चीज

इस लेख में, आइए हम एक MySQL डेटाबेस से जुड़ने के विवरण और इसके साथ कुछ प्रश्नों को करने के तरीके को देखें।





MySQL डेटाबेस ड्राइवर

जैसा कि ऊपर बताया गया है, एक MySQL डेटाबेस से कनेक्ट करने में सक्षम होने के लिए, आपको MySQL के लिए JDBC ड्राइवर की आवश्यकता है। इसे कनेक्टर/जे ड्राइवर कहा जाता है और इसे यहां से डाउनलोड किया जा सकता है यहाँ MySQL साइट।

एक बार जब आप ज़िप (या TAR.GZ) फ़ाइल डाउनलोड कर लेते हैं, तो संग्रह को निकालें और JAR फ़ाइल की प्रतिलिपि बनाएँ mysql-कनेक्टर-जावा--bin.jar एक उपयुक्त स्थान पर। MySQL JDBC ड्राइवर का उपयोग करने वाले किसी भी कोड को चलाने के लिए यह फ़ाइल आवश्यक है।



एक नमूना डेटाबेस बनाना

मान लें कि आपने MySQL डेटाबेस डाउनलोड कर लिया है और इसे ठीक से सेट करें जहां आपकी पहुंच है, आइए हम एक नमूना डेटाबेस बनाते हैं ताकि हम इसका उपयोग प्रश्नों को जोड़ने और निष्पादित करने के लिए कर सकें।

अपनी पसंद के क्लाइंट का उपयोग करके डेटाबेस से कनेक्ट करें और नमूना डेटाबेस बनाने के लिए निम्नलिखित कथन चलाएँ।





create database sample;

डेटाबेस से कनेक्ट करने में सक्षम होने के लिए हमें एक उपयोगकर्ता नाम और पासवर्ड की भी आवश्यकता होती है (जब तक कि आप व्यवस्थापक के रूप में कनेक्ट नहीं करना चाहते, जो आमतौर पर एक बुरा विचार है)।

निम्नलिखित नाम का एक उपयोगकर्ता बनाता है परीक्षक जो उसी मशीन से MySQL डेटाबेस से कनेक्ट होगा जहां वह चल रहा है (द्वारा दर्शाया गया है स्थानीय होस्ट ), पासवर्ड का उपयोग कर सुरक्षितपीडब्ल्यूडी .





create user 'testuser'@'localhost' identified by 'securepwd';

यदि आप किसी अन्य मशीन पर चल रहे डेटाबेस से जुड़ रहे हैं (नाम रिमोटएमसी ), आपको निम्नलिखित का उपयोग करने की आवश्यकता है ( रिमोटएमसी एक होस्टनाम या एक आईपी पता हो सकता है):

create user 'testuser'@'remotemc' identified by 'securepwd';

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

grant all on sample.* to 'testuser'@'localhost';

या, यदि डेटाबेस दूरस्थ है:

grant all on sample.* to 'testuser'@'remotemc';

अब आपको सत्यापित करना चाहिए कि आप कर सकते हैं डेटाबेस से कनेक्ट करें उपयोगकर्ता के रूप में आपने अभी-अभी उसी पासवर्ड से बनाया है। यह सुनिश्चित करने के लिए कि सभी अनुमतियाँ सही हैं, आप कनेक्ट करने के बाद निम्न कमांड चला सकते हैं।

create table joe(id int primary key auto_increment, name varchar(25));
drop table joe;

जावा क्लास पथ सेट करें

आइए अब जावा से MySQL से कनेक्ट करने के तरीके के विवरण में आते हैं। पहला कदम डेटाबेस ड्राइवर को लोड करना है। यह निम्नलिखित को उपयुक्त स्थान पर बुलाकर किया जाता है।

Wii . पर होमब्रे कैसे लगाएं
Class.forName('com.mysql.jdbc.Driver');

कोड एक अपवाद फेंक सकता है, इसलिए यदि आप इससे निपटने का इरादा रखते हैं तो आप इसे पकड़ सकते हैं (जैसे जीयूआई के लिए त्रुटि संदेश स्वरूपित करना)।

try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
// use the exception here
}

इस कोड को कक्षा में एक स्थिर ब्लॉक में लागू करना बहुत आम है, इसलिए यदि ड्राइवर लोड नहीं किया जा सकता है तो प्रोग्राम तुरंत विफल हो जाता है।

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
}

बेशक, ड्राइवर को खोजने में सक्षम होने के लिए, प्रोग्राम को ड्राइवर JAR (डाउनलोड और ऊपर निकाला गया) के साथ क्लास पाथ में शामिल किया जाना चाहिए।

java -cp mysql-connector-java--bin.jar:...

जावा से MySQL से कनेक्ट करना

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

String jdbcUrl = ...;
Connection con = DriverManager.getConnection(jdbcUrl);

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

String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=secrepwd';

ध्यान दें कि हमने होस्टनाम सहित कनेक्शन के लिए आवश्यक सभी पैरामीटर शामिल किए हैं ( स्थानीय होस्ट ), उपयोगकर्ता नाम और पासवर्ड। (पासवर्ड को इस तरह शामिल करना एक अच्छा अभ्यास नहीं है, विकल्पों के लिए नीचे देखें।)

इसका उपयोग करना जेडीबीसीयूआरएल , यहां कनेक्टिविटी की जांच के लिए एक पूरा कार्यक्रम है।

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
static public void main(String[] args) throws Exception
{
String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=securepwd';
Connection con = DriverManager.getConnection(jdbcUrl);
System.out.println('Connected!');
con.close();
}
}

ध्यान दें कि एक डेटाबेस कनेक्शन एक प्रोग्राम में एक कीमती संसाधन है और इसे ऊपर के रूप में ठीक से बंद किया जाना चाहिए। हालाँकि, उपरोक्त कोड अपवाद के मामले में कनेक्शन को बंद नहीं करता है। सामान्य या असामान्य निकास पर कनेक्शन बंद करने के लिए, निम्न पैटर्न का उपयोग करें:

try(Connection con = DriverManager.getConnection(jdbcUrl)) {
System.out.println('Connected!');
}

जैसा कि ऊपर उल्लेख किया गया है, पासवर्ड को JDBC URL में एम्बेड करना एक बुरा विचार है। सीधे उपयोगकर्ता नाम और पासवर्ड निर्दिष्ट करने के लिए, आप इसके बजाय निम्न कनेक्शन विकल्प का उपयोग कर सकते हैं।

विंडोज़ 10 को गति देने के लिए सेटिंग्स
String jdbcUrl = 'jdbc:mysql://localhost/sample';
try(Connection con = DriverManager.getConnection(jdbcUrl, 'testuser', 'securepwd')) {
}

जावा से डेटाबेस को क्वेरी करना

अब जब डेटाबेस से कनेक्शन स्थापित हो गया है, तो आइए देखें कि क्वेरी कैसे करें, जैसे डेटाबेस संस्करण को क्वेरी करना:

select version();

जावा में एक क्वेरी निम्नानुसार निष्पादित की जाती है। ए कथन ऑब्जेक्ट बनाया जाता है और क्वेरी का उपयोग करके निष्पादित किया जाता है क्वेरी को निष्पादित करें() विधि जो a . लौटाती है परिणाम सेट .

String queryString = 'select version()';
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery(queryString);

से संस्करण प्रिंट करें परिणाम सेट निम्नलिखित नुसार। 1 1 से शुरू होने वाले परिणामों में कॉलम की अनुक्रमणिका को संदर्भित करता है।

while ( rset.next()) {
System.out.println('Version: ' + rset.getString(1));
}

परिणामों को संसाधित करने के बाद, वस्तुओं को बंद करने की आवश्यकता होती है।

rset.close();
stmt.close();

और इसमें जावा से MySQL से कनेक्ट करने और एक साधारण क्वेरी करने के लिए सब कुछ शामिल है।

हमारे को भी देखें SQL कमांड चीट शीट .

साझा करना साझा करना कलरव ईमेल क्या असंगत पीसी पर विंडोज 11 स्थापित करना ठीक है?

अब आप पुराने पीसी पर आधिकारिक आईएसओ फाइल के साथ विंडोज 11 स्थापित कर सकते हैं ... लेकिन क्या ऐसा करना एक अच्छा विचार है?

आगे पढ़िए
संबंधित विषय
  • प्रोग्रामिंग
  • जावा
  • एसक्यूएल
लेखक के बारे में जय श्रीधर(17 लेख प्रकाशित) जय श्रीधर की और फ़िल्में या टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें