Skill

MySQL ডেটাবেজ ম্যানেজমেন্ট

মাইএসকিউএল (MySQL) - Database Tutorials

329

MySQL একটি শক্তিশালী রিলেশনাল ডেটাবেস ম্যানেজমেন্ট সিস্টেম (RDBMS), যা ডেটাবেস তৈরির, পরিচালনার এবং পরিচালনার জন্য ব্যবহৃত হয়। MySQL এর মাধ্যমে আপনি ডেটাবেস তৈরি করতে, টেবিল সংজ্ঞায়িত করতে, ডেটা ইনসার্ট করতে, কুয়েরি চালাতে এবং নিরাপত্তা ব্যবস্থা পরিচালনা করতে পারেন। নিচে MySQL ডেটাবেজ ম্যানেজমেন্টের বিভিন্ন মূল কার্যক্রম এবং কৌশল আলোচনা করা হলো।


১. ডেটাবেস তৈরি (Create Database)

MySQL এ নতুন ডেটাবেস তৈরি করতে CREATE DATABASE কমান্ড ব্যবহার করা হয়। উদাহরণস্বরূপ:

CREATE DATABASE mydatabase;

এই কমান্ডটি mydatabase নামে একটি নতুন ডেটাবেস তৈরি করবে।


২. ডেটাবেস নির্বাচন (Select Database)

একটি ডেটাবেস নির্বাচন করতে USE কমান্ড ব্যবহার করা হয়:

USE mydatabase;

এই কমান্ডটি mydatabase ডেটাবেসে কাজ করার জন্য আপনাকে নির্বাচন করবে।


৩. টেবিল তৈরি (Create Table)

ডেটাবেসে টেবিল তৈরি করতে CREATE TABLE কমান্ড ব্যবহার করতে হয়। প্রতিটি টেবিলের জন্য কলাম এবং তাদের ডেটা টাইপ নির্ধারণ করতে হবে। উদাহরণ:

CREATE TABLE users (
    id INT AUTO_INCREMENT,
    name VARCHAR(100),
    email VARCHAR(100),
    PRIMARY KEY (id)
);

এই কমান্ডটি একটি users নামে টেবিল তৈরি করবে, যেখানে id, name, এবং email কলাম রয়েছে।


৪. টেবিলের কাঠামো পরিবর্তন (Alter Table)

টেবিলের কাঠামো পরিবর্তন করতে ALTER TABLE কমান্ড ব্যবহার করা হয়। উদাহরণস্বরূপ, একটি নতুন কলাম যোগ করতে:

ALTER TABLE users ADD COLUMN age INT;

এই কমান্ডটি users টেবিলের শেষে একটি নতুন age নামক কলাম যোগ করবে।

টেবিলের কলাম মুছে ফেলতে:

ALTER TABLE users DROP COLUMN age;

৫. ডেটা ইনসার্ট (Insert Data)

টেবিলে ডেটা ইনসার্ট করতে INSERT INTO কমান্ড ব্যবহার করা হয়। উদাহরণস্বরূপ:

INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');

এই কমান্ডটি users টেবিলে একটি নতুন রেকর্ড ইনসার্ট করবে।


৬. ডেটা আপডেট (Update Data)

টেবিলে থাকা ডেটা আপডেট করতে UPDATE কমান্ড ব্যবহার করা হয়:

UPDATE users SET email = 'john.doe@example.com' WHERE name = 'John Doe';

এই কমান্ডটি John Doe নামের ব্যবহারকারীর ইমেইল ঠিকানা আপডেট করবে।


৭. ডেটা নির্বাচন (Select Data)

একটি বা একাধিক টেবিল থেকে ডেটা নির্বাচন করতে SELECT কমান্ড ব্যবহার করা হয়:

SELECT * FROM users;

এই কমান্ডটি users টেবিলের সমস্ত কলাম এবং রেকর্ড নির্বাচন করবে।

নির্দিষ্ট কলাম নির্বাচন করতে:

SELECT name, email FROM users;

৮. ডেটা মুছা (Delete Data)

টেবিল থেকে ডেটা মুছতে DELETE FROM কমান্ড ব্যবহার করা হয়:

DELETE FROM users WHERE name = 'John Doe';

এই কমান্ডটি John Doe নামের রেকর্ডটি users টেবিল থেকে মুছে ফেলবে।


৯. টেবিল মুছা (Drop Table)

টেবিলটি পুরোপুরি মুছে ফেলতে DROP TABLE কমান্ড ব্যবহার করা হয়:

DROP TABLE users;

এই কমান্ডটি users টেবিলটি এবং এর সকল ডেটা স্থায়ীভাবে মুছে ফেলবে।


১০. ইন্ডেক্স তৈরি (Create Index)

ইন্ডেক্স তৈরি করলে ডেটাবেসের কুয়েরি পারফরমেন্স বাড়াতে সাহায্য করে। উদাহরণ:

CREATE INDEX idx_email ON users(email);

এই কমান্ডটি email কলামে একটি ইনডেক্স তৈরি করবে।


১১. টেবিলের কাঠামো দেখুন (Show Table Structure)

টেবিলের কাঠামো দেখতে DESCRIBE বা SHOW COLUMNS কমান্ড ব্যবহার করা হয়:

DESCRIBE users;

অথবা

SHOW COLUMNS FROM users;

এই কমান্ডটি users টেবিলের সমস্ত কলাম এবং তাদের ডেটা টাইপ প্রদর্শন করবে।


১২. ব্যাকআপ এবং রিকভারি (Backup and Recovery)

MySQL ডেটাবেসের ব্যাকআপ নেওয়া এবং পুনরুদ্ধার করা গুরুত্বপূর্ণ।

ব্যাকআপ:

ডেটাবেসের ব্যাকআপ নিতে mysqldump টুল ব্যবহার করা হয়:

mysqldump -u root -p mydatabase > backup.sql

রিকভারি:

ব্যাকআপ ফাইলটি পুনরুদ্ধার করতে:

mysql -u root -p mydatabase < backup.sql

১৩. ডেটাবেসের নিরাপত্তা (Database Security)

MySQL ডেটাবেসের নিরাপত্তা নিশ্চিত করতে আপনি User Privileges এবং Access Control কনফিগার করতে পারেন। উদাহরণস্বরূপ, নতুন ইউজার তৈরি করে তাদের জন্য নির্দিষ্ট অনুমতি সেট করা:

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON mydatabase.* TO 'username'@'localhost';
FLUSH PRIVILEGES;

এই কমান্ডটি নতুন ইউজার username তৈরি করবে এবং তাকে mydatabase ডেটাবেসে সমস্ত অনুমতি দেবে।


সারাংশ

MySQL ডেটাবেজ ম্যানেজমেন্ট সিস্টেমের মাধ্যমে আপনি ডেটাবেস তৈরি, কনফিগার, এবং পরিচালনা করতে পারেন। ডেটাবেসের বিভিন্ন কার্যক্রম যেমন ডেটা ইনসার্ট, আপডেট, মুছে ফেলা, এবং নিরাপত্তা কনফিগারেশন ইত্যাদি MySQL এর মাধ্যমে সহজেই করা যায়। MySQL তার উচ্চ পারফরমেন্স, স্কেলেবিলিটি এবং নিরাপত্তা বৈশিষ্ট্য দ্বারা বিভিন্ন ধরনের অ্যাপ্লিকেশন ও সিস্টেমে ব্যবহৃত হয়।

Content added By

MySQL-এ নতুন ডেটাবেজ তৈরি করা এবং তা ম্যানেজ করার প্রক্রিয়া অত্যন্ত সহজ এবং কার্যকরী। এটি SQL কমান্ডের মাধ্যমে করা যায়, অথবা বিভিন্ন গ্রাফিক্যাল ইউজার ইন্টারফেস (GUI) টুল ব্যবহার করে। এখানে MySQL-এ নতুন ডেটাবেজ তৈরি করার পদ্ধতি এবং তা ম্যানেজ করার জন্য প্রয়োজনীয় কিছু কমান্ড এবং টুলস আলোচনা করা হবে।


1. MySQL-এ নতুন ডেটাবেজ তৈরি করা

কমান্ড লাইন ব্যবহার করে ডেটাবেজ তৈরি

MySQL-এ ডেটাবেজ তৈরি করার জন্য CREATE DATABASE SQL কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

CREATE DATABASE <database_name>;

উদাহরণ:

CREATE DATABASE my_new_database;

এই কমান্ডটি my_new_database নামে একটি নতুন ডেটাবেজ তৈরি করবে।

ডেটাবেজ তৈরি করার পর, ডেটাবেজে কাজ করা

নতুন ডেটাবেজ তৈরি করার পর, আপনাকে সেই ডেটাবেজটিতে কাজ করতে হবে। এজন্য USE কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

USE <database_name>;

উদাহরণ:

USE my_new_database;

এখন, আপনি এই ডেটাবেজের মধ্যে টেবিল তৈরি, ডেটা ইনসার্ট, বা অন্যান্য অপারেশন করতে পারবেন।


2. ডেটাবেজের টেবিল তৈরি করা

ডেটাবেজ তৈরি করার পর, টেবিল তৈরি করা যায়। টেবিল তৈরি করতে CREATE TABLE কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

CREATE TABLE <table_name> (
    column1 datatype,
    column2 datatype,
    ...
);

উদাহরণ:

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL,
    email VARCHAR(100),
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

এটি একটি users নামক টেবিল তৈরি করবে, যার মধ্যে id, username, email এবং created_at নামের কলাম থাকবে।


3. ডেটাবেজের টেবিল ম্যানেজমেন্ট

টেবিলের মধ্যে ডেটা ইনসার্ট করা

নতুন টেবিলে ডেটা ইনসার্ট করার জন্য INSERT INTO কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

INSERT INTO <table_name> (column1, column2, ...) VALUES (value1, value2, ...);

উদাহরণ:

INSERT INTO users (username, email) VALUES ('john_doe', 'john@example.com');

এটি users টেবিলের মধ্যে একটি নতুন রেকর্ড ইনসার্ট করবে।

টেবিল থেকে ডেটা নির্বাচন করা

টেবিল থেকে ডেটা দেখার জন্য SELECT কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

SELECT column1, column2, ... FROM <table_name>;

উদাহরণ:

SELECT * FROM users;

এটি users টেবিলের সব রেকর্ড প্রদর্শন করবে।

টেবিলের ডেটা আপডেট করা

একটি টেবিলের ডেটা আপডেট করার জন্য UPDATE কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

UPDATE <table_name> SET column1 = value1, column2 = value2 WHERE condition;

উদাহরণ:

UPDATE users SET email = 'newemail@example.com' WHERE username = 'john_doe';

এটি users টেবিলের মধ্যে john_doe ইউজারের ইমেইল আপডেট করবে।

টেবিল থেকে ডেটা মুছে ফেলা

টেবিল থেকে ডেটা মুছে ফেলার জন্য DELETE কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

DELETE FROM <table_name> WHERE condition;

উদাহরণ:

DELETE FROM users WHERE username = 'john_doe';

এটি users টেবিল থেকে john_doe ইউজারের রেকর্ড মুছে ফেলবে।


4. ডেটাবেজের টেবিলের কাঠামো পরিবর্তন করা

টেবিলের কলাম পরিবর্তন করা

একটি টেবিলের কলাম পরিবর্তন করতে ALTER TABLE কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

ALTER TABLE <table_name> ADD column_name datatype;
ALTER TABLE <table_name> MODIFY column_name datatype;
ALTER TABLE <table_name> DROP COLUMN column_name;

উদাহরণ:

ALTER TABLE users ADD age INT;

এটি users টেবিলের মধ্যে একটি নতুন age কলাম যোগ করবে।


5. ডেটাবেজ ডিলিট করা

ডেটাবেজ মুছে ফেলতে DROP DATABASE কমান্ড ব্যবহার করা হয়। তবে, এটি সাবধানতার সাথে ব্যবহার করতে হবে, কারণ এটি ডেটাবেজ এবং এর সকল তথ্য মুছে ফেলবে।

সিনট্যাক্স:

DROP DATABASE <database_name>;

উদাহরণ:

DROP DATABASE my_new_database;

এটি my_new_database ডেটাবেজ মুছে ফেলবে।


6. MySQL-এ ডেটাবেজের ব্যাকআপ এবং পুনরুদ্ধার

ব্যাকআপ (Backup) তৈরি করা

MySQL ডেটাবেজের ব্যাকআপ নিতে mysqldump টুল ব্যবহার করা হয়।

সিনট্যাক্স:

mysqldump -u <username> -p <database_name> > <backup_file.sql>

উদাহরণ:

mysqldump -u root -p my_new_database > my_new_database_backup.sql

এটি my_new_database ডেটাবেজের ব্যাকআপ তৈরি করবে।

ব্যাকআপ থেকে ডেটাবেজ পুনরুদ্ধার (Restore)

ব্যাকআপ থেকে ডেটাবেজ পুনরুদ্ধার করতে mysql কমান্ড ব্যবহার করা হয়।

সিনট্যাক্স:

mysql -u <username> -p <database_name> < <backup_file.sql>

উদাহরণ:

mysql -u root -p my_new_database < my_new_database_backup.sql

এটি my_new_database_backup.sql ফাইল থেকে ডেটাবেজ পুনরুদ্ধার করবে।


সারাংশ

MySQL-এ ডেটাবেজ তৈরি করা এবং পরিচালনা করার প্রক্রিয়া অত্যন্ত সহজ এবং কার্যকরী। আপনি CREATE DATABASE, CREATE TABLE, INSERT INTO, SELECT, UPDATE, DELETE, এবং ALTER এর মতো SQL কমান্ড ব্যবহার করে ডেটাবেজ এবং টেবিল তৈরি, পরিচালনা এবং ম্যানেজ করতে পারেন। এছাড়া ব্যাকআপ এবং পুনরুদ্ধারের জন্য mysqldump টুল ব্যবহৃত হয়, যা ডেটাবেজের নিরাপত্তা নিশ্চিত করে।

Content added By

MySQL-এ টেবিল তৈরি করতে হলে CREATE TABLE কমান্ড ব্যবহার করতে হয়। একটি টেবিলের মধ্যে বিভিন্ন ধরনের ডেটা সংরক্ষিত হয়, এবং প্রতিটি কলামের জন্য একটি নির্দিষ্ট ডেটা টাইপ নির্ধারণ করতে হয়। নিচে CREATE TABLE কমান্ডের মাধ্যমে টেবিল তৈরি এবং বিভিন্ন ডেটা টাইপ সম্পর্কে বিস্তারিত আলোচনা করা হয়েছে।


1. CREATE TABLE কমান্ড

CREATE TABLE কমান্ডের মাধ্যমে MySQL-এ টেবিল তৈরি করা হয়। এর মূল সিনট্যাক্স নিম্নরূপ:

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype,
    ...
);

উদাহরণ:

ধরা যাক, আমরা একটি students নামে টেবিল তৈরি করতে চাই, যেখানে ছাত্রদের নাম, বয়স, গ্রেড এবং ভর্তি তারিখ থাকবে। আমরা এই টেবিলটি নিম্নরূপ তৈরি করতে পারিঃ

CREATE TABLE students (
    student_id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    age INT,
    grade CHAR(1),
    enrollment_date DATE
);

এখানে:

  • student_id: INT টাইপের একটি কলাম, যা সঠিক পূর্ণসংখ্যা ধারণ করবে। AUTO_INCREMENT ব্যবহার করা হয়েছে যাতে প্রতিটি নতুন ছাত্রের জন্য একটি স্বয়ংক্রিয় মান তৈরি হয় এবং PRIMARY KEY দিয়ে এটিকে একটি ইউনিক কলাম হিসেবে চিহ্নিত করা হয়েছে।
  • name: VARCHAR(100), যা 100 ক্যারেক্টার পর্যন্ত অক্ষর ধারণ করতে পারে।
  • age: INT টাইপ, যা বয়সের পূর্ণসংখ্যা ধারণ করবে।
  • grade: CHAR(1), যা 1 ক্যারেক্টারের একটি স্ট্রিং ধারণ করবে (যেমন 'A', 'B', 'C' ইত্যাদি)।
  • enrollment_date: DATE টাইপ, যা একটি নির্দিষ্ট তারিখ ধারণ করবে।

2. MySQL ডেটা টাইপ

MySQL বিভিন্ন ধরনের ডেটা টাইপ প্রদান করে যা টেবিলের কলামগুলোতে ডেটা সংরক্ষণের জন্য ব্যবহার করা হয়। ডেটা টাইপগুলো প্রধানত দুইটি শ্রেণিতে ভাগ করা যায়: সংখ্যা ডেটা টাইপ এবং স্ট্রিং ডেটা টাইপ

সংখ্যা ডেটা টাইপ (Numeric Data Types)

  1. INT: পূর্ণসংখ্যা (Integer) ধারণ করে। সাধারণত ছোট বা বড় সংখ্যার জন্য ব্যবহৃত হয়।
    • উদাহরণ: age INT
  2. DECIMAL(M, D): দশমিক সংখ্যা ধারণ করে, যেখানে M হলো মোট সংখ্যা এবং D হলো দশমিক স্থান সংখ্যা।
    • উদাহরণ: salary DECIMAL(10, 2) (এখানে 10টি সংখ্যা, তার মধ্যে 2টি দশমিকের পরে)
  3. FLOAT: ফ্লোটিং পয়েন্ট সংখ্যা, যা ছোট আকারের দশমিক সংখ্যার জন্য ব্যবহার করা হয়।
    • উদাহরণ: height FLOAT
  4. DOUBLE: ফ্লোটিং পয়েন্ট সংখ্যার তুলনায় আরও বড় মান ধারণ করার জন্য ব্যবহৃত হয়।
    • উদাহরণ: weight DOUBLE
  5. TINYINT: ছোট পূর্ণসংখ্যা ( -128 থেকে 127 পর্যন্ত) ধারণ করে।
    • উদাহরণ: is_active TINYINT
  6. BIGINT: বড় পূর্ণসংখ্যা (-9223372036854775808 থেকে 9223372036854775807 পর্যন্ত) ধারণ করে।
    • উদাহরণ: transaction_id BIGINT

স্ট্রিং ডেটা টাইপ (String Data Types)

  1. VARCHAR(N): একটি ভ্যারিয়েবল-লেংথ স্ট্রিং যা N সংখ্যা পর্যন্ত অক্ষর ধারণ করতে পারে।
    • উদাহরণ: name VARCHAR(100)
  2. CHAR(N): একটি স্থির-লেংথ স্ট্রিং যা নির্দিষ্ট N সংখ্যা পর্যন্ত অক্ষর ধারণ করে।
    • উদাহরণ: grade CHAR(1)
  3. TEXT: বড় আকারের টেক্সট ডেটা ধারণ করার জন্য ব্যবহৃত হয়।
    • উদাহরণ: description TEXT
  4. LONGTEXT: আরও বড় আকারের টেক্সট ডেটা ধারণ করে।
    • উদাহরণ: notes LONGTEXT
  5. BLOB: বাইনারি ডেটা ধারণ করার জন্য ব্যবহৃত হয়।
    • উদাহরণ: profile_picture BLOB

তারিখ ও সময় ডেটা টাইপ (Date and Time Data Types)

  1. DATE: তারিখ (YYYY-MM-DD) ধারণ করে।
    • উদাহরণ: birth_date DATE
  2. TIME: সময় (HH:MM:SS) ধারণ করে।
    • উদাহরণ: start_time TIME
  3. DATETIME: তারিখ ও সময় (YYYY-MM-DD HH:MM:SS) ধারণ করে।
    • উদাহরণ: created_at DATETIME
  4. TIMESTAMP: সময়ের সাথে সম্পর্কিত তারিখ ও সময় ধারণ করে এবং এটি টেবিলের রেকর্ড তৈরির সময়টি ট্র্যাক করে।
    • উদাহরণ: updated_at TIMESTAMP
  5. YEAR: একটি বছর ধারণ করে (প্রথম থেকে 4 অঙ্কের বছর)।
    • উদাহরণ: joining_year YEAR

3. উদাহরণ: MySQL-এ টেবিল তৈরি ও ডেটা টাইপ ব্যবহার

এখন, আসুন একটি উদাহরণ দেখি যেখানে আমরা ছাত্রদের তথ্য সংরক্ষণ করার জন্য একটি টেবিল তৈরি করব এবং বিভিন্ন ডেটা টাইপ ব্যবহার করব:

CREATE TABLE students (
    student_id INT AUTO_INCREMENT PRIMARY KEY,
    first_name VARCHAR(50),
    last_name VARCHAR(50),
    birth_date DATE,
    age INT,
    grade CHAR(1),
    height DECIMAL(5,2),
    email VARCHAR(100),
    is_active TINYINT(1) DEFAULT 1,
    enrolled_on DATETIME
);

এখানে:

  • student_id: INT টাইপ, এটি স্বয়ংক্রিয়ভাবে বাড়ানো হবে এবং PRIMARY KEY হিসেবে ব্যবহৃত হবে।
  • first_name, last_name: VARCHAR(50), যার মানে ৫০ অক্ষরের পর্যন্ত স্ট্রিং।
  • birth_date: DATE টাইপ, যেটি ছাত্রের জন্মতারিখ সংরক্ষণ করবে।
  • age: INT টাইপ, ছাত্রের বয়স।
  • grade: CHAR(1), ছাত্রের গ্রেড।
  • height: DECIMAL(5,2), ছাত্রের উচ্চতা।
  • email: VARCHAR(100), ছাত্রের ইমেইল।
  • is_active: TINYINT(1), এটি ১ বা ০ হতে পারে, যা ছাত্রের সক্রিয় অবস্থা নির্ধারণ করবে।
  • enrolled_on: DATETIME টাইপ, ছাত্রের ভর্তি হওয়ার সময়।

সারাংশ

MySQL-এ টেবিল তৈরি করার জন্য CREATE TABLE কমান্ড ব্যবহার করা হয় এবং টেবিলের বিভিন্ন কলামে ডেটা টাইপ নির্ধারণ করা হয়, যা সেই কলামে সংরক্ষিত ডেটার ধরণ এবং আকার নির্ধারণ করে। এখানে বিভিন্ন ধরনের ডেটা টাইপ যেমন, INT, VARCHAR, DATE, DECIMAL, TINYINT ইত্যাদি ব্যবহৃত হয়।

Content added By

MySQL-এ DESCRIBE কমান্ডটি একটি ডেটাবেস টেবিলের কাঠামো দেখতে ব্যবহৃত হয়। এটি টেবিলের মধ্যে থাকা কলামগুলোর নাম, ডেটা টাইপ, ডিফল্ট মান, কী (প্রাইমারি কী, ফরেন কী), নাল (NULL বা NOT NULL), ইনডেক্স এবং অন্যান্য তথ্য প্রদর্শন করে।

DESCRIBE কমান্ডের সাধারণ ব্যবহার:

DESCRIBE table_name;

এখানে, table_name হল সেই টেবিলের নাম যার কাঠামো আপনি দেখতে চান।

উদাহরণ:

ধরা যাক, আপনার একটি টেবিলের নাম students এবং আপনি এই টেবিলের কাঠামো দেখতে চান:

DESCRIBE students;

এই কমান্ডটি চালানোর পর, টেবিলের কলামগুলোর জন্য নিম্নলিখিত তথ্য পাওয়া যাবে:

  • Field: কলামের নাম
  • Type: কলামের ডেটা টাইপ
  • Null: কলামটি NULL হতে পারে কিনা
  • Key: কলামটি কী ধরনের কী (যেমন, PRI (প্রাইমারি কী), UNI (ইউনিক), MUL (মাল্টিপল ইনডেক্স))
  • Default: কলামের জন্য ডিফল্ট মান (যদি থাকে)
  • Extra: অতিরিক্ত তথ্য, যেমন auto_increment ইত্যাদি

DESCRIBE এর পরিবর্তে SHOW COLUMNS ব্যবহার:

DESCRIBE কমান্ডের পরিবর্তে আপনি SHOW COLUMNS কমান্ডও ব্যবহার করতে পারেন, যা একই রকম তথ্য প্রদর্শন করে।

SHOW COLUMNS FROM table_name;

এটি একই আউটপুট প্রদান করবে, যেমন:

SHOW COLUMNS FROM students;

সারাংশ

MySQL-এ DESCRIBE কমান্ডটি টেবিলের কাঠামো দ্রুত দেখতে ব্যবহৃত হয়, যা টেবিলের কলাম, ডেটা টাইপ, কী এবং অন্যান্য গুরুত্বপূর্ণ তথ্য প্রদর্শন করে।

Content added By

MySQL-এ ALTER TABLE কমান্ড ব্যবহার করে একটি টেবিলের কাঠামো পরিবর্তন করা হয়। এই কমান্ডের মাধ্যমে আপনি টেবিলের কলাম যোগ, কলাম মুছে ফেলা, কলামের নাম পরিবর্তন, ডাটা টাইপ পরিবর্তন, এবং অন্যান্য কাঠামোগত পরিবর্তন করতে পারবেন।

এখানে কিছু সাধারণ ALTER TABLE কমান্ডের উদাহরণ দেওয়া হলো:


1. নতুন কলাম যোগ করা

ALTER TABLE কমান্ডের সাহায্যে আপনি একটি নতুন কলাম টেবিলের মধ্যে যোগ করতে পারেন:

ALTER TABLE table_name ADD column_name datatype;

উদাহরণ:

ALTER TABLE students ADD email VARCHAR(100);

এটি students টেবিলে একটি নতুন email নামক কলাম যোগ করবে, যা VARCHAR(100) টাইপ হবে।


2. কলামের ডেটা টাইপ পরিবর্তন করা

একটি কলামের ডেটা টাইপ পরিবর্তন করতে MODIFY COLUMN ব্যবহার করা হয়:

ALTER TABLE table_name MODIFY COLUMN column_name new_datatype;

উদাহরণ:

ALTER TABLE students MODIFY COLUMN email VARCHAR(255);

এটি students টেবিলের email কলামের ডেটা টাইপ পরিবর্তন করবে এবং তা VARCHAR(255) করবে।


3. কলামের নাম পরিবর্তন করা

একটি কলামের নাম পরিবর্তন করতে CHANGE COLUMN কমান্ড ব্যবহার করা হয়:

ALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name datatype;

উদাহরণ:

ALTER TABLE students CHANGE COLUMN email contact_email VARCHAR(255);

এটি students টেবিলের email কলামের নাম পরিবর্তন করে contact_email করবে এবং তার ডেটা টাইপ VARCHAR(255) থাকবে।


4. কলাম মুছে ফেলা

যদি আপনি একটি কলাম মুছে ফেলতে চান, তবে DROP COLUMN কমান্ড ব্যবহার করবেন:

ALTER TABLE table_name DROP COLUMN column_name;

উদাহরণ:

ALTER TABLE students DROP COLUMN email;

এটি students টেবিলের email কলামটি মুছে ফেলবে।


5. প্রাইমারি কি যোগ করা

আপনি টেবিলের একটি কলামকে প্রাইমারি কি হিসেবে ঘোষণা করতে পারেন:

ALTER TABLE table_name ADD PRIMARY KEY (column_name);

উদাহরণ:

ALTER TABLE students ADD PRIMARY KEY (student_id);

এটি students টেবিলে student_id কলামকে প্রাইমারি কি হিসেবে সেট করবে।


6. ইউনিক কনস্ট্রেইন্ট যোগ করা

একটি কলামের জন্য ইউনিক কনস্ট্রেইন্ট যোগ করতে:

ALTER TABLE table_name ADD UNIQUE (column_name);

উদাহরণ:

ALTER TABLE students ADD UNIQUE (email);

এটি students টেবিলে email কলামের জন্য ইউনিক কনস্ট্রেইন্ট যোগ করবে, যার মানে এই কলামে প্রতিটি মান আলাদা হতে হবে।


7. ফরেন কী কনস্ট্রেইন্ট যোগ করা

একটি কলামে ফরেন কী কনস্ট্রেইন্ট যোগ করতে:

ALTER TABLE table_name ADD CONSTRAINT constraint_name FOREIGN KEY (column_name) REFERENCES other_table (other_column);

উদাহরণ:

ALTER TABLE students ADD CONSTRAINT fk_class FOREIGN KEY (class_id) REFERENCES classes (class_id);

এটি students টেবিলে class_id কলামে ফরেন কী কনস্ট্রেইন্ট যোগ করবে, যা classes টেবিলের class_id কলামের সাথে সম্পর্ক স্থাপন করবে।


8. কলামের ডিফল্ট মান সেট করা

একটি কলামে ডিফল্ট মান সেট করতে:

ALTER TABLE table_name ALTER COLUMN column_name SET DEFAULT default_value;

উদাহরণ:

ALTER TABLE students ALTER COLUMN status SET DEFAULT 'active';

এটি students টেবিলের status কলামে ডিফল্ট মান হিসেবে 'active' সেট করবে।


সারাংশ

MySQL-এ ALTER TABLE কমান্ড একটি টেবিলের কাঠামো পরিবর্তন করার জন্য ব্যবহৃত হয়। আপনি এটি ব্যবহার করে টেবিলের মধ্যে নতুন কলাম যোগ করতে পারেন, কলামের নাম পরিবর্তন করতে পারেন, ডেটা টাইপ পরিবর্তন করতে পারেন, কলাম মুছে ফেলতে পারেন, এবং আরও অনেক কিছু করতে পারেন। ALTER TABLE টেবিলের কাঠামো পরিবর্তন করার জন্য একটি শক্তিশালী এবং অত্যন্ত ব্যবহারিক কমান্ড।

Content added By
Promotion

Are you sure to start over?

Loading...