جاوا کے ساتھ ایس کیو ایل ڈیٹا بیس سے کیسے جڑیں۔

جاوا کے ساتھ ایس کیو ایل ڈیٹا بیس سے کیسے جڑیں۔

جاوا فراہم کرتا ہے۔ جے ڈی بی سی (جاوا ڈیٹا بیس کنیکٹوٹی) جاوا ایس ڈی کے (سافٹ ویئر ڈویلپمنٹ کٹ) کے ایک حصے کے طور پر۔ اس کا استعمال کرتے ہوئے۔ آگ ، ایک رشتہ دار ڈیٹا بیس سے جڑنا اور عام کام کرنا جیسے استفسار کرنا ، داخل کرنا ، اپ ڈیٹ کرنا اور ریکارڈ حذف کرنا بہت آسان ہے۔





جبکہ بنیادی JDBC API جاوا میں شامل ہے ، ایک خاص ڈیٹا بیس جیسے MySQL یا SQL سرور سے منسلک ہونے کے لیے ایک اضافی جزو درکار ہوتا ہے جسے ڈیٹا بیس ڈرائیور کہا جاتا ہے۔ یہ ڈیٹا بیس ڈرائیور ایک سافٹ وئیر جزو ہے جو کہ بنیادی جے ڈی بی سی کالز کو اس ڈیٹا بیس سے سمجھے گئے فارمیٹ میں ترجمہ کرتا ہے۔





میک کو روکو میں کیسے ڈالیں۔

اس آرٹیکل میں ، آئیے ایک ایس کیو ایل ڈیٹا بیس سے منسلک ہونے کی تفصیلات اور اس کے ساتھ کچھ سوالات کیسے انجام دیں۔





ایس کیو ایل ڈیٹا بیس ڈرائیور۔

جیسا کہ اوپر بیان کیا گیا ہے ، ایس کیو ایل ڈیٹا بیس سے رابطہ قائم کرنے کے لیے ، آپ کو ایس کیو ایل کے لیے جے ڈی بی سی ڈرائیور کی ضرورت ہے۔ اسے کنیکٹر/جے ڈرائیور کہا جاتا ہے اور اسے ڈاؤن لوڈ کیا جا سکتا ہے۔ MySQL سائٹ یہاں.

ایک بار جب آپ ZIP (یا TAR.GZ) فائل ڈاؤن لوڈ کر لیں تو آرکائیو نکالیں اور JAR فائل کاپی کریں۔ mysql-connector-java-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;

جاوا کلاس پاتھ سیٹ کریں۔

آئیے اب جاوا سے ایس کیو ایل سے کیسے جڑیں اس کی تفصیلات میں آتے ہیں۔ پہلا قدم ڈیٹا بیس ڈرائیور کو لوڈ کرنا ہے۔ یہ ایک مناسب جگہ پر درج ذیل کو طلب کرکے کیا جاتا ہے۔

ونڈوز 10 ری سائیکل بن کا آئیکن غائب ہے۔
Class.forName('com.mysql.jdbc.Driver');

کوڈ ایک استثناء پھینک سکتا ہے ، لہذا اگر آپ اس سے نمٹنے کا ارادہ رکھتے ہیں تو آپ اسے پکڑ سکتے ہیں (جیسے GUI کے لیے غلطی کے پیغام کو فارمیٹ کرنا)۔

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: ...

جاوا سے ایس کیو ایل سے جڑ رہا ہے۔

اب جب کہ ہم نے جاوا سے ایس کیو ایل ڈرائیور کو لوڈ کرنے کی تفصیلات کو ختم کر دیا ہے ، آئیے ہم ڈیٹا بیس سے جڑ جائیں۔ ڈیٹا بیس کنکشن بنانے کا ایک طریقہ یہ ہے کہ ڈرائیور مینیجر۔ .

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

اور کیا ہے jdbcUrl ؟ یہ کنکشن کی تفصیلات کی نشاندہی کرتا ہے ، بشمول سرور جہاں ڈیٹا بیس واقع ہے ، صارف نام اور اسی طرح۔ یہاں ہماری مثال کے لیے ایک نمونہ یو آر ایل ہے۔

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

نوٹس کریں کہ ہم نے کنکشن کے لیے درکار تمام پیرامیٹرز شامل کیے ہیں ، بشمول میزبان نام ( لوکل ہوسٹ ) ، صارف نام اور پاس ورڈ۔ (اس طرح کے پاس ورڈ کو شامل کرنا اچھا عمل نہیں ہے ، متبادل کے لیے نیچے ملاحظہ کریں۔)

اس کا استعمال کرتے ہوئے۔ jdbcUrl ، یہاں کنیکٹیوٹی چیک کرنے کے لیے ایک مکمل پروگرام ہے۔

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!');
}

جیسا کہ اوپر بیان کیا گیا ہے ، جے ڈی بی سی یو آر ایل میں پاس ورڈ شامل کرنا برا خیال ہے۔ صارف نام اور پاس ورڈ کو براہ راست بتانے کے لیے ، آپ اس کے بجائے درج ذیل کنکشن آپشن استعمال کر سکتے ہیں۔

ایمیزون پرائم کی آڈیو تفصیل کو کیسے بند کیا جائے۔
String jdbcUrl = 'jdbc:mysql://localhost/sample';
try(Connection con = DriverManager.getConnection(jdbcUrl, 'testuser', 'securepwd')) {
}

جاوا سے ڈیٹا بیس سے استفسار

اب چونکہ ڈیٹا بیس سے رابطہ قائم ہے ، آئیے دیکھتے ہیں کہ سوال کیسے انجام دیا جائے ، جیسے ڈیٹا بیس ورژن سے استفسار:

select version();

جاوا میں مندرجہ ذیل کے طور پر ایک استفسار کیا جاتا ہے۔ اے۔ بیان۔ آبجیکٹ بنائی گئی ہے اور ایک استفسار کو استعمال کرتے ہوئے عمل میں لایا گیا ہے۔ executeQuery () طریقہ جو واپس کرتا ہے a رزلٹ سیٹ۔ .

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

سے ورژن پرنٹ کریں۔ رزلٹ سیٹ۔ مندرجہ ذیل کے طور پر. 1 سے شروع ہونے والے نتائج میں کالم کی انڈیکس سے مراد ہے۔

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

نتائج پر کارروائی کے بعد ، اشیاء کو بند کرنے کی ضرورت ہے۔

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

اور اس میں جاوا سے ایس کیو ایل سے جڑنا اور ایک سادہ استفسار کرنا شامل ہے۔

ہمارا بھی چیک کریں۔ ایس کیو ایل کمیٹ شیٹ۔ .

بانٹیں بانٹیں ٹویٹ ای میل۔ کیا غیر مطابقت پذیر پی سی پر ونڈوز 11 انسٹال کرنا ٹھیک ہے؟

اب آپ سرکاری آئی ایس او فائل کے ساتھ پرانے پی سی پر ونڈوز 11 انسٹال کر سکتے ہیں ... لیکن کیا ایسا کرنا اچھا خیال ہے؟

اگلا پڑھیں۔
متعلقہ موضوعات۔
  • پروگرامنگ۔
  • جاوا
  • ایس کیو ایل۔
مصنف کے بارے میں جے سریدھر۔(17 مضامین شائع ہوئے) جے سریدھر سے مزید

ہماری نیوز لیٹر کو سبسکرائب کریں

ٹیک ٹپس ، جائزے ، مفت ای بکس ، اور خصوصی سودوں کے لیے ہمارے نیوز لیٹر میں شامل ہوں!

سبسکرائب کرنے کے لیے یہاں کلک کریں۔