Macro হল একটি সংকলিত SQL স্টেটমেন্টের একটি গ্রুপ, যা একাধিক SQL কমান্ড একযোগে কার্যকর করতে ব্যবহৃত হয়। এটি ডেটাবেসে একাধিক SQL স্টেটমেন্টের একটি রেকর্ড এবং পুনরাবৃত্তি সক্ষমতা প্রদান করে। টেরাডেটাতে ম্যাক্রো তৈরি করে আপনি বারবার একই SQL স্টেটমেন্টগুলি চলানোর পরিবর্তে, একবার লিখে তারপরে প্রয়োজন অনুযায়ী এগুলি চালাতে পারেন। এটি বিশেষভাবে কার্যকরী যখন একাধিক SQL অপারেশন একে অপরের উপর নির্ভরশীল হয়।
টেরাডেটাতে Macro তৈরি করা
টেরাডেটাতে একটি ম্যাক্রো তৈরি করার জন্য CREATE MACRO কমান্ড ব্যবহার করা হয়। এটি সাধারণত একটি বা একাধিক SQL স্টেটমেন্ট ধারণ করে যা পরবর্তীতে নির্দিষ্ট নামের মাধ্যমে কার্যকর করা যায়।
ম্যাক্রো তৈরি করার Syntax:
CREATE MACRO macro_name (parameter1 data_type, parameter2 data_type, ...) AS
(
SQL_statement_1;
SQL_statement_2;
...
);
এখানে:
macro_name: ম্যাক্রোর নাম।parameter1,parameter2, ... : ম্যাক্রোতে ব্যবহৃত ইনপুট প্যারামিটারগুলো।SQL_statement_1,SQL_statement_2, ... : ম্যাক্রোর মধ্যে থাকা SQL স্টেটমেন্টগুলো।
উদাহরণ:
ধরা যাক, আপনি একটি ম্যাক্রো তৈরি করতে চান যা একটি নির্দিষ্ট বিভাগের বিক্রয় ডেটা রিটার্ন করবে:
CREATE MACRO Sales_Report (dept_id INTEGER) AS
(
SELECT * FROM sales_data
WHERE department_id = :dept_id;
);
এখানে, Sales_Report নামে একটি ম্যাক্রো তৈরি হয়েছে, যা dept_id প্যারামিটার নেবে এবং sales_data টেবিল থেকে সংশ্লিষ্ট বিভাগের ডেটা রিটার্ন করবে।
Macro ব্যবহার করা
একবার ম্যাক্রো তৈরি হয়ে গেলে, আপনি সেটি EXECUTE কমান্ড ব্যবহার করে চালাতে পারেন। ম্যাক্রো চালানোর সময় আপনাকে সেই প্যারামিটারটি পাস করতে হয় যেটি ম্যাক্রোতে নির্দিষ্ট করা হয়েছে।
ম্যাক্রো চালানোর Syntax:
EXECUTE macro_name (parameter1, parameter2, ...);
উদাহরণ:
যদি আপনি পূর্বে তৈরি করা Sales_Report ম্যাক্রোটি চালাতে চান, তবে এরকম হবে:
EXECUTE Sales_Report (101);
এখানে, 101 হলো dept_id প্যারামিটার, যার জন্য সংশ্লিষ্ট বিক্রয় ডেটা রিটার্ন হবে।
Macro এর সুবিধা
- পুনরাবৃত্তি এড়ানো: একাধিকবার একই SQL কোড লেখা থেকে বিরত থাকা যায়, ম্যাক্রোর মাধ্যমে আপনি কোড পুনঃব্যবহার করতে পারবেন।
- ডেটাবেস পারফরম্যান্স: একাধিক SQL স্টেটমেন্ট একত্রে চলানোর মাধ্যমে আপনার ডেটাবেস অপারেশন দ্রুত এবং কার্যকরী হয়।
- সহজ অপারেশন: ম্যাক্রোর মাধ্যমে জটিল SQL অপারেশনকে একটি কমান্ডের মাধ্যমে সরল করা যায়।
- ইনপুট প্যারামিটার ব্যবহার: ইনপুট প্যারামিটার ব্যবহার করে আপনি একাধিক ভিন্ন ভিন্ন কন্ডিশনে ম্যাক্রো চালাতে পারেন, যা কোডের পুনঃব্যবহারযোগ্যতা বাড়ায়।
Macro এবং Stored Procedure এর মধ্যে পার্থক্য
টেরাডেটাতে ম্যাক্রো এবং স্টোরড প্রোসিডিউর (Stored Procedure) দুটি আলাদা ধারণা। যদিও উভয়েরই লক্ষ্য একই, কিন্তু কিছু পার্থক্য রয়েছে:
- Macro:
- এটি SQL স্টেটমেন্টগুলির একটি গ্রুপ।
- ম্যাক্রোতে প্রোগ্রামিং লজিক বা জটিল অপারেশন লেখা সম্ভব নয়।
- সাধারণত ডেটাবেস অপারেশনের জন্য ব্যবহৃত হয়।
- Stored Procedure:
- এতে জটিল লজিক এবং প্রোগ্রামিং কোড থাকতে পারে।
- এটি বেশি ফ্লেক্সিবিলিটি এবং কন্ট্রোল প্রদান করে।
- সাধারণত অ্যাপ্লিকেশন লজিক বা ট্রানজেকশনাল কার্যক্রম পরিচালনার জন্য ব্যবহৃত হয়।
সারাংশ
টেরাডেটাতে Macro একটি শক্তিশালী টুল যা একাধিক SQL স্টেটমেন্টের গ্রুপ তৈরি করে এবং এই স্টেটমেন্টগুলিকে একটি নির্দিষ্ট নাম দিয়ে সহজেই এক্সিকিউট করা যায়। এটি কোড পুনঃব্যবহারযোগ্যতা বাড়ায় এবং ডেটাবেসের পারফরম্যান্স উন্নত করে। CREATE MACRO কমান্ড ব্যবহার করে ম্যাক্রো তৈরি করা হয়, এবং EXECUTE কমান্ড দিয়ে ম্যাক্রোটি চালানো হয়। ম্যাক্রো এবং স্টোরড প্রোসিডিউরের মধ্যে কিছু পার্থক্য রয়েছে, তবে দুটি সমানভাবে ডেটাবেসের কার্যক্রমকে সহজ এবং কার্যকরী করে তোলে।
Read more