JDBC টিউটোরিয়ালঃ জাভা প্রোগ্রামিং, MySQL ডেটাবেজ কানেক্ট এবং কোয়েরী

এ টিউটোরিয়াল লেখার সময় আমি Eclipse ব্যবহার করেছি। আপনি যে কোন IDE ই ব্যবহার করতে পারেন। Eclipse এবং JDK সেটআপের উপর একটি লেখা আছে। প্রয়োজনে তা দেখে নিতে পারে।

আমরা ডাটাবেজ হিসেবে MySQL ব্যবহার করব। তার জন্য MySQL ডাউনলোড করে ইন্সটল করে নিতে হবে। এবং কমান্ড লাইন ব্যবহার করে MySQL এ ডেটাবেজ তৈরি করতে হবে। একটা সহজ উপায় হচ্ছে WAMP ব্যবহার করা। WAMP ইন্সটলের সাথে MySQL ইন্সটল হয়ে যাবে। এবং সুন্দর একটি টুলস ইন্সটল হবে, phpMyAdmin নামে। যেখানে গ্রাফিক্যালি ডাটাবেজ ম্যানেজ করা যাবে। এখানে গিয়ে wamp ডাউনলোড করে নেওয়া যাবে।

phpMyAdmin ব্যভার করে কিভাবে ডেটাবেজ তৈরি করা হয়, তা সম্পর্কে বিস্তারিত নিচের লেখা থেকে জানা যাবেঃ

ধরে নিচ্ছি আপনি ডেটাবেজ তৈরি করতে পেরেছেন। এবং একই ভাবে আপনার ইউজার নেম এবং পাসওয়ার্ড সম্পর্কেও জানেন। তাহলে এবার আমরা জাভা ডেটাবেজ প্রজেক্ট তৈরি করতে প্রস্তুত। জাভাতে ডেটাবেজ নিয়ে কাজ করার জন্য একটা এক্সট্রা ড্রাইভার লাগে। নাম JDBC। MySQL এর জন্য JDBC ড্রাইভার নিচের লিঙ্কে গিয়ে ডাউনলোড করে নেওয়া যাবেঃ

ডাউনলোড করার জন্য একাউন্ট খুলতে হবে। একাউন্ট খুলে লগিন করার পর ডাউনলোড পেইজে গিয়ে Select Platform অপশন থেকে Platform Independent সিলেক্ট করে tar অথবা zip ভার্শন ডাউনলোড করে নিতে হবে।

ডাউনলোড করে এক্সট্রাক্ট করার পর অনেক গুলো ফাইল এবং ফোল্ডার দেখব। আমাদের শুধু jar ফাইলটা লাগবে। যা হচ্ছে এমনঃ mysql-connector-java-5.x.xx-bin.jar

এবার Eclipse বা যে কোন IDE / Text editor এ একটা জাভা প্রজেক্ট তৈরি করব। একটা ক্লাস তৈরি করব। ধরি Main নাম হচ্ছে আমাদের জাভা ক্লাস।

আমাদের প্রজেক্টে mysql-connector-java-5.x.xx-bin.jar লাইব্রেরীটা যুক্ত করতে হবে। তার জন্য Eclipse ব্যবহার করে থাকলে প্রজেক্টে একটা libs ফোল্ডার তৈরি করে সে ফোল্ডারে mysql-connector-java-5.x.xx-bin.jar টা রাখতে হবে।রাখলে অটোমেটিক প্রজেক্টে লাইব্রেরীটা ডিটেক্ট করতে পারার কথা। যদি না হয় তাহলে নিচের পদ্ধতিতে যুক্ত করা যাবেঃ

add library to project

প্রজেক্টের উপর রাইট ক্লিক করে Properties এ ক্লিক করতে হবে। ঐখান থেকে Java Build Path ট্যাবে ক্লিক করে উপরের মেনু থেকে Libraries এ ক্লিক করতে হবে। ডান পাশ থেকে Add Jars এ ক্লিক করতে হবে। এবার প্রজেক্ট ন্যাভিগেশন থেকে libs ফোল্ডার থেকে mysql-connector-java-5.x.xx-bin.jar সিলেক্ট করে ওকে দিয়ে বের হয়ে আসতে হবে।

এবার আমরা ডেটাবেজ কানেক্ট করার জন্য প্রস্তুত। জাভা প্রোগ্রামে ডেটাবেজ কানেক্ট করার পূর্বে আমাদের যে সব জিনিসের প্রতি নজর রাখতে হবেঃ

1. আমাদের wamp সার্ভার অনলাইনে থাকতে হবে
2. ডেটাবেজ তৈরি করা থাকতে হবে
3. ডেটাবেজে টেবিল তৈরি করা থাকতে হবে
4. phpMyAdmin এর Privilege থেকে ইউজারের নাম এবং পাসওয়ার্ড জানা থাকতে হবে। যদি কোন ইউজার তৈরি করা না থাকে, তাহলে ইউজার তৈরি করে নিতে হবে।

এসব থাকলে সহজেই ডেটাবেজ কানেক্ট করতে পারি। কানেক্ট করার জন্য মাত্র একটি লাইনেই সহজেই করতে পারি।


Connection connection = DriverManager.getConnection( "jdbc:mysql://localhost/dbNme" ,"userName", "password" );

SQL Connect:

dbName এর জাগায় phpMyAdmin এ তৈরি করা আপনার ডেটাবেজ নেম দিতে হবে। userName এবং password এর জাগায় আপনার ইউজারনেম এবং পাসওয়ার্ড দিতে হবে। ঠিক মত ডেটাবেজ কানেক্ট হয়েছে কিনা, তার জন্য একটা প্রোগ্রাম লিখে টেস্ট করতে পারিঃ

অনেক গুলো কোড দেখে মনে হতে পারে অনেক কিছু, আসলে আমরা ডেটাবেজ কানেক্ট করার পর একটা কোড লিখেছিঃ

          if (connection != null)   {
            System. out .println("DB Connected!" );
          }

এটা দিয়ে চেক করেছি কানেকটেড হয়েছে কিনা। উপরের প্রোগ্রাম যদি রান করতে কোন ইরর না দেখায়, তাহলে বুঝতে হবে আমরা আমাদের প্রজেক্ট ডেটাবেজ এর সাথে সুন্দর ভাবে কানেক্ট করতে পেরেছি।  

SQL INSERT:

  কানেক্ট হলে গেলে আমরা ডেটাবেজে ডেটা ইনসার্ট, ডেটা রিড, আপডেট, ডিলেট সবই করতে পারব। সিম্পল একটা প্রোগ্রাম লিখি, যেখানে আমরা ডেটাবেজে একটা ডেটা ইনসার্ট করব। আমি উদাহরণ হিসেবে jdbc নামে একটি ডেটাবেজ তৈরি করেছি। jdbc ডেটাবেজে users নামে একটা টেবিল তৈরি করেছি, যেটায় তিনটা কলাম রয়েছে, যথাক্রমেঃ id, name, email. এখানে id হিসেবে আমি 1 দিয়েছি, name হিসবে jack এবং ইমেইল হিসেবে [email protected] আপনি নিজের মত ডেটা দিয়ে ইনসার্ট করতে পারেন। নিচে সম্পুর্ণ প্রোগ্রামঃ

এখানে sql = “INSERT INTO users ” + “VALUES ( 1, ‘Jack’, ‘[email protected]’)”; দিয়ে আমরা ডেটাবেজে ডেটা ইন্সার্ট করেছি। প্রোগ্রামে যদি কোন ভুল না থাকে, তাহলে ডেটাবেজে ডেটা ইনসার্ট হবে।

phpMyAdmin এ ডেটাবেজ এ গিয়ে টেবিল সিলেক্ট করে Browse এ ক্লিক করলে দেখতে পাবো আমাদের ডেটা ঐখানে রয়েছে। প্রথমবার যখন এ রেজাল্ট পেয়েছি, কি দারুণই না লেগেছিল!! আশা করি আপনার কাছেও ভালো লাগবে 🙂

আমরা চাইলে আরো ডেটা ইনসার্ট করতে পারি। কিন্তু ID 1 এক আর ব্যবহার করতে পারব না। উপরের প্রোগ্রামটি সঠিক ভাবে দুইবার রান করালে ভুল দেখাবে। id ভ্যালু 1 এর পরিবর্তে 2 করে দিলে আর ভুল দেখাবে না। নাম এবং ইমেইল পরিবর্তন করলেও হবে। না করলেও সমস্যা নেই। এভাবে প্রতিবার id এর মান বাড়াতে হবে।

SQL READ:

ডেটা তো ইনসার্ট করেছি, আমরা চাইলে এবার ডেটাবেজ থেকে ডেটা রিড করতে পারি। তার জন্য প্রোগ্রামটিঃ

SQL কোয়েরী কিভাবে কাজ করে তা নিয়ে আলোচনা করলাম না। যদি না জানা থাকে, SQL Tutorial লিখে গুগলে সার্চ করে SQL Query সম্পর্কে জেনে নিতে পারেন।

এবার আপনি কিভাবে ডেটাবেজ থেকে একটা ডেটা ডিলেট করা যায় এবং কিভবে একটি ডেটা আপডেট করা যায়, তার প্রোগ্রাম লিখে ফেলুন। গুগলের হেল্প নিতে পারেন।

শুভ প্রোগ্রামিং 🙂

 

জাভা নিয়ে অনেক গুলো লেখা আছে এ ব্লগে। জাভা ক্যাটেগরিতে পাওয়া যাবে 🙂

4 thoughts on “JDBC টিউটোরিয়ালঃ জাভা প্রোগ্রামিং, MySQL ডেটাবেজ কানেক্ট এবং কোয়েরী”

  1. ভাই, আপনাকে অশেষ ধন্যবাদ।
    অনেক চেষ্টা করছিলাম। কিন্তু আপনার JDBC টিউটোরিয়াল দেখে প্রথমবারের মতো কানেক্ট করতে পারলাম।
    প্রথমবার রেজাল্ট পেয়ে দারুণ লাগল!!
    আপনার প্রতি কৃতজ্ঞ রইলাম। আল্লাহ আপনার মঙ্গল করুন।

    Reply
  2. অসংখ্য ধন্যবাদ ভাইয়া। 🙂
    আমি NetBeans ব্যবহার করে আপনার টিউটোরিয়াল দেখে দেখে ডাটাবেজ কানেক্ট এবং রীড করাতে পেরেছি। টিউটোরিায়ালটি গোছানো ছিল অনেক। সময় পেলে অফলাইনে ডাটাবেজ নিয়ে কাজ করা অর্থাৎ ‘sqlite’ বা ‘MS Access’ এই উপরে একটি টিউটোরিয়াল দিয়েন। 😀

    Reply
  3. আপনার লেখাটা পড়ার পর একটু ঘাটাঘাটি করতেই sqlite নিয়েও কাজ করতে পেরেছি। আর আপনার দেয়া কাজ delete ও update করতেও পেরেছি। 🙂 Thanks… অনেক সুন্দর করে লিখেন আপনি। সময় পেলে জাভার উপর আরও লিখবেন।

    Reply

Leave a Reply