Stored Procedures এর উদাহরণ

Database Tutorials - এইচ২ ডাটাবেস (H2 Database) Stored Procedures এবং Functions |
255
255

Stored Procedures হল SQL কোডের একটি সংগ্রহ, যা ডেটাবেজে সংরক্ষিত থাকে এবং পরে একাধিকবার ব্যবহার করা যায়। এটি SQL কুয়েরি বা লজিকের পুনঃব্যবহারযোগ্য ব্লক যা ডেটাবেজে রাখা হয় এবং যখন প্রয়োজন তখন কল করা হয়। Stored Procedures ব্যবহারের মাধ্যমে ডেটাবেজের কাজগুলো আরও কার্যকরী, দ্রুত এবং নিরাপদ করা সম্ভব।

H2 ডেটাবেজে Stored Procedures ব্যবহার করা সহজ এবং এটি SQL কুয়েরি বা অপারেশনগুলোকে পুনঃব্যবহারযোগ্য, কার্যকরী এবং মডুলার করে তোলে।


Stored Procedure তৈরি করা

H2 ডেটাবেজে একটি Stored Procedure তৈরি করতে CREATE PROCEDURE কমান্ড ব্যবহার করা হয়।

Stored Procedure এর সাধারণ সিনট্যাক্স:

CREATE PROCEDURE procedure_name (parameters)
LANGUAGE SQL
AS
BEGIN
    -- SQL কোড বা লজিক
END;
  • procedure_name: প্রোসিজারের নাম
  • parameters: প্যারামিটার যা প্রোসিজারের সাথে পাঠানো হবে
  • SQL কোড: এটি প্রোসিজারের কাজকর্মের জন্য ব্যবহার করা হয়

Stored Procedure উদাহরণ ১: সাধারণ SELECT কুয়েরি

ধরা যাক, আপনার একটি students টেবিল আছে এবং আপনি এই টেবিলের সকল ছাত্রদের নাম এবং গ্রেড দেখতে চান। আপনি এই কাজটি করতে একটি Stored Procedure তৈরি করতে পারেন।

উদাহরণ:

CREATE PROCEDURE getAllStudents()
LANGUAGE SQL
AS
BEGIN
    SELECT name, grade
    FROM students;
END;

এই Stored Procedure-টি যখন কল করা হবে, তখন এটি students টেবিল থেকে ছাত্রদের নাম এবং গ্রেড রিটার্ন করবে।

Stored Procedure কল করা:

CALL getAllStudents();

এটি students টেবিল থেকে ছাত্রদের নাম এবং গ্রেড বের করবে।


Stored Procedure উদাহরণ ২: প্যারামিটার সহ

ধরা যাক, আপনি একটি students টেবিলের মধ্যে শুধুমাত্র নির্দিষ্ট গ্রেডের ছাত্রদের তথ্য দেখতে চান। এর জন্য আপনি প্যারামিটার সহ একটি Stored Procedure তৈরি করতে পারেন।

উদাহরণ:

CREATE PROCEDURE getStudentsByGrade(grade_param VARCHAR)
LANGUAGE SQL
AS
BEGIN
    SELECT name, age, grade
    FROM students
    WHERE grade = grade_param;
END;

এখানে, grade_param হল প্যারামিটার যা প্রোসিজার কল করার সময় পাস করা হবে। এই প্রোসিজারটি শুধুমাত্র সেই ছাত্রদের দেখাবে যাদের গ্রেড প্যারামিটার হিসাবে পাস করা হবে।

Stored Procedure কল করা:

CALL getStudentsByGrade('A');

এটি সমস্ত ছাত্রদের রিটার্ন করবে যাদের গ্রেড 'A'।


Stored Procedure উদাহরণ ৩: INSERT, UPDATE এবং DELETE

ধরা যাক, আপনি ছাত্রদের তথ্য ইনসার্ট করতে একটি Stored Procedure তৈরি করতে চান। আপনি একটি students টেবিলের জন্য INSERT অপারেশন করতে পারেন।

INSERT অপারেশনের Stored Procedure উদাহরণ:

CREATE PROCEDURE insertStudent(name_param VARCHAR, age_param INT, grade_param VARCHAR)
LANGUAGE SQL
AS
BEGIN
    INSERT INTO students (name, age, grade)
    VALUES (name_param, age_param, grade_param);
END;

এই প্রোসিজারটি একটি নতুন ছাত্রের নাম, বয়স এবং গ্রেড টেবিলে ইনসার্ট করবে।

Stored Procedure কল করা:

CALL insertStudent('John Doe', 22, 'B');

এটি students টেবিলে একটি নতুন ছাত্রের তথ্য ইনসার্ট করবে।

UPDATE অপারেশনের Stored Procedure উদাহরণ:

CREATE PROCEDURE updateStudentGrade(id_param INT, new_grade_param VARCHAR)
LANGUAGE SQL
AS
BEGIN
    UPDATE students
    SET grade = new_grade_param
    WHERE student_id = id_param;
END;

এই প্রোসিজারটি একটি নির্দিষ্ট ছাত্রের গ্রেড আপডেট করবে।

Stored Procedure কল করা:

CALL updateStudentGrade(1, 'A');

এটি student_id = 1 এর গ্রেড আপডেট করে 'A' করবে।

DELETE অপারেশনের Stored Procedure উদাহরণ:

CREATE PROCEDURE deleteStudent(id_param INT)
LANGUAGE SQL
AS
BEGIN
    DELETE FROM students
    WHERE student_id = id_param;
END;

এই প্রোসিজারটি নির্দিষ্ট ছাত্রের রেকর্ড ডিলিট করবে।

Stored Procedure কল করা:

CALL deleteStudent(1);

এটি student_id = 1 এর ছাত্রের তথ্য মুছে ফেলবে।


Stored Procedure এর সুবিধা

  1. কোড পুনঃব্যবহারযোগ্যতা: একবার প্রোসিজার তৈরি হলে, এটি পুনরায় ব্যবহার করা যায়।
  2. পারফরম্যান্স বৃদ্ধি: কুয়েরিগুলি একাধিকবার ব্যবহার করার জন্য সংরক্ষণ করা হয়, ফলে ডেটাবেজ সিস্টেমে লোড কমে যায়।
  3. নিরাপত্তা: Stored Procedure ব্যবহার করে আপনি ডেটাবেজের কনফিগারেশন এবং ডেটার প্রাইভেসি নিশ্চিত করতে পারেন, কারণ ব্যবহারকারীরা সরাসরি SQL কুয়েরি চালাতে পারে না।
  4. ডেটাবেজ লজিক: আপনি জটিল ডেটাবেজ লজিক, গণনা এবং পদ্ধতিগুলি প্রোসিজারে সংরক্ষণ করতে পারেন, যা অ্যাপ্লিকেশন লেয়ারকে সহজ এবং পরিষ্কার রাখে।

উপসংহার

H2 ডেটাবেজে Stored Procedures ব্যবহার ডেটাবেজ পরিচালনার এবং ডেটা ম্যানিপুলেশনের একটি শক্তিশালী উপায়। এটি ডেটাবেজ কুয়েরি বা অপারেশনগুলিকে পুনঃব্যবহারযোগ্য এবং নিরাপদ করে তোলে, এবং ডেটাবেজের কর্মক্ষমতা বাড়ানোর জন্য গুরুত্বপূর্ণ ভূমিকা পালন করে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion