লারাভেল এবং ডেটাবেজ

লারাভেল কিভাবে ডেটাবেজ যুক্ত করতে হয় এ সম্পর্কে জানব। আমরা চাইলে SQLite ব্যবহার করতে পারি। এটা লারাভেলের সাথে ডিফল্ট ভাবে যুক্ত থাকে। আমরা চাইলে অন্য যে কোন ডেটাবেজ ব্যবহার করতে পারি। আমি দেখাবো কিভাবে MySQL যুক্ত করা যায়।  ডেটাবেজ যুক্ত করার জন্য আমাদের কম্পিউটারে MySQL ইন্সটল করতে হবে। আমি ব্যবহার করব WAMP সার্ভার। এটাতে এক সাথে পিএইচপি, MySQL ইত্যাদি প্যাকেজ আকারে থাকে। আরেকটা দরকারি টুল থাকে, phpMyAdmin। phpMyAdmin খুবি দারুণ একটা টুল। সার্ভার এবং WAMP নিয়ে আরেকটা লেখা রয়েছে, বিস্তারিত সব ঐখানে জানা যাবেঃ সার্ভার সম্পর্কে ধারণা, wamp সার্ভার ইন্সটল এবং ব্যবহার

এ ছাড়া আরেকটা লেখা রয়েছে phpMyAdmin এ MySQL ডেটাবেজ ম্যানেজমেন্ট নিয়ে। এটিও কাজে দিবে। এগুলো হচ্ছে ব্যাসিক জ্ঞান। এবার লারাভেলে আসি।

লারাভেলে ডেটাবেজ সেট করার জন্য একটা ফাইল রয়েছে .env নামে। ঐফাইলে আমাদের ডেটাবেজের নাম, হোস্ট, পাসওয়ার্ড ইত্যাদি দিতে হবে।

 

 

phpMyAdmin ব্যবহার করে আপনি ডেটাবেজ তৈরি করে নিয়ে ঐ তথ্য গুলো এখানে দিতে পারেন। আপনি চাইলে কমান্ডলাইনও ব্যবহার করতে পারেন। কমান্ড লাইন ব্যবহার করে MySQL ডেটাবেজ তৈরি করতে চাইলে আপনাকে  mysql এর পাথ Windows এর Environment variable এ যুক্ত করতে হবে। আপনি wamp ব্যবহার করলে mysql এর পাথ হবে এমনঃ C:\wamp\bin\mysql\mysql6.x.x\bin

কমান্ড লাইনে ডেটাবেজ তৈরি করার জন্য প্রথমে user name এবং password দিয়ে mysqal এ লগিন করতে হবে। যেমন আমরা root ব্যবহারকারী হিসেবে লগিন করার জন্যঃ

mysql -uroot -p

এরপর ডেটাবেজ তৈরি করার জন্যঃ

create database database-name;

দিলে আপনার দেওয়া নামে ডেটাবেজ তৈরি হবে।

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

mysql use database-name

এরপর আমরা যে কোন SQL কমান্ড ব্যবহার করতে পারব। SQL এর ব্যাসিক জানার জন্য http://www.w3schools.com/sql/
 


 

কমান্ডলাইন ব্যবহার করে ডেটাবেজ তৈরি করলেও কাজ করবে আবার phpMyAdmin ব্যবহার করে ডেটাবেজ তৈরি করলেও কাজ করবে। phpMyAdmin এ একটা বাড়তি শুবিধে হচ্ছে ডেটাবেজের টেবিল এবং কন্টেন্ট ভিজুয়ালি দেখা যায় এবং এডিট বা যুক্ত করা যায়।

 

উপরের সবই ডেটাবেজ নিয়ে ব্যাসিক ধারণা। আবার লারাভেলে ফিরে আসি। কমান্ড লাইনে আমাদের প্রজেক্ট ডিরেক্টরিতে যাই। এরপর নিচের কমান্ড লিখিঃ

php artisan migrate

আমাদের ডেটাবেজ ঠিক মত কানেক্ট হলে ডেটাবেজে কিছু টেবিল যুক্ত হবে। কমান্ড লাইনে গিয়ে mysql show tables; [সেমিকোলন দিতে হবে] অথবা phpMyAdmin এ গিয়ে ডেটাবেজ দেখলে আমরা তা দেখতে পাবো।

আমরা যে কমান্ডটি রান করেছি, এর কাজ হচ্ছে আমাদের ডেটাবেজের স্কিমা যে ভাবে ডিফাইন করা রয়েছে, সেভাবে ডেটাবেজ টেবিল গুলো তৈরি করে দিতে। আর ডেটাবেজ স্কিমা গুলো কেমন হবে, তা লেখা রয়েছে project>Database>Migrations ফোল্ডারের ভেতর। আমরা যদি এ ফোল্ডারে যাই, তাহলে দেখব এর ভেতর দুইটি ফাইল রয়েছে। একটা হচ্ছে user টেবিলের জন্য। আরেকটা password টেবিলের জন্য।

সব ঠিক ঠাক মত হলে দারুণ। আমরা লারাভেলের সাথে ডেটাবেজ কানেক্ট করতে পেরেছি!

1 thought on “লারাভেল এবং ডেটাবেজ”

  1. লারাভেলে নাকি টেবিল নেম প্লুরাল বা s যুক্ত করতে হয়। এখন আমার এক্সিস্টিং এ্যাপলিকেশনকে লারাভেলে রূপান্তর করতে গেলে কিভাবে করব?

    Reply

Leave a Reply