H2 Database-এ Commit এবং Rollback দুটি গুরুত্বপূর্ণ ট্রানজেকশন ম্যানেজমেন্ট অপারেশন। এগুলি ডেটাবেজের ডেটা পরিবর্তনের প্রক্রিয়া নিয়ন্ত্রণ করে এবং ডেটাবেজে সঠিকতা এবং অখণ্ডতা (consistency) বজায় রাখে। নিচে এই দুটি অপারেশন এবং তাদের ব্যবহার বিস্তারিতভাবে আলোচনা করা হলো।
Commit হল একটি SQL ট্রানজেকশন অপারেশন যা ডেটাবেজে করা পরিবর্তনগুলি স্থায়ী (persistent) করে তোলে। যখন একটি ট্রানজেকশনের মধ্যে একাধিক অপারেশন (যেমন INSERT
, UPDATE
, DELETE
) করা হয়, তখন Commit এই পরিবর্তনগুলিকে ডেটাবেজে সেভ করে দেয়।
Commit
করেন, তখন ট্রানজেকশনের মধ্যে করা সমস্ত পরিবর্তন চূড়ান্ত হয়ে যায় এবং সেগুলি স্থায়ীভাবে ডেটাবেজে সংরক্ষিত হয়।Commit
করার পরে, ট্রানজেকশন শেষ হয়ে যায় এবং কোনও পরিবর্তন আর বাতিল (rollback) করা সম্ভব নয়।BEGIN;
INSERT INTO employees (id, name, position, salary) VALUES (1, 'Alice', 'Engineer', 50000);
UPDATE employees SET salary = 60000 WHERE id = 1;
COMMIT;
এখানে:
BEGIN
দ্বারা ট্রানজেকশন শুরু হয়েছে।INSERT
এবং UPDATE
অপারেশন)।COMMIT
অপারেশন দ্বারা এই পরিবর্তনগুলি ডেটাবেজে স্থায়ী হয়ে গেছে।Rollback হল একটি SQL ট্রানজেকশন অপারেশন যা ট্রানজেকশনের মধ্যে করা সমস্ত পরিবর্তন পূর্বাবস্থায় ফিরিয়ে আনে। যদি আপনি একটি ট্রানজেকশন চলাকালে কোনও ভুল বা সমস্যা দেখতে পান, তবে Rollback
ব্যবহার করে আপনি সমস্ত পরিবর্তন বাতিল করতে পারেন এবং ডেটাবেজকে পূর্বের অবস্থায় ফিরিয়ে আনতে পারেন।
Rollback
করা হয়, তখন ট্রানজেকশনের মধ্যে করা সমস্ত পরিবর্তন ফিরিয়ে আনা হয় এবং ডেটাবেজ পূর্বের অবস্থায় ফিরে আসে।BEGIN;
INSERT INTO employees (id, name, position, salary) VALUES (2, 'Bob', 'Manager', 70000);
UPDATE employees SET salary = 65000 WHERE id = 2;
-- যদি কিছু ভুল হয়, Rollback করা হবে
ROLLBACK;
এখানে:
BEGIN
দ্বারা ট্রানজেকশন শুরু হয়েছে।INSERT
এবং UPDATE
অপারেশন)।ROLLBACK
দ্বারা করা সমস্ত পরিবর্তন বাতিল হয়ে যাবে এবং ডেটাবেজ পূর্বের অবস্থায় ফিরে যাবে।Rollback
করে ডেটাবেজের পূর্বের অবস্থায় ফিরে যেতে পারেন, ফলে ডেটা সুরক্ষিত থাকে।বৈশিষ্ট্য | Commit | Rollback |
---|---|---|
ফাংশন | পরিবর্তনগুলিকে ডেটাবেজে স্থায়ী করে তোলে | করা পরিবর্তনগুলো বাতিল করে পূর্বের অবস্থায় ফিরে আসে |
ব্যবহার | যখন আপনি নিশ্চিত হন যে সব কিছু সঠিকভাবে সম্পন্ন হয়েছে | যখন একটি ভুল বা সমস্যা ঘটে এবং পরিবর্তনগুলো বাতিল করতে হয় |
পরিণতি | পরিবর্তন স্থায়ী হয় এবং আর বাতিল করা যায় না | পরিবর্তনগুলি বাতিল হয়ে যায়, এবং ডেটাবেজ পূর্বের অবস্থায় ফিরে আসে |
কখন ব্যবহার করবেন | ডেটাবেজে করা পরিবর্তনগুলো নিশ্চিতভাবে সেভ করতে | ভুল সংশোধন করতে বা পরীক্ষার সময়ে ডেটাবেজে কোনো পরিবর্তন করতে না চাওয়া |
H2 ডেটাবেজে ট্রানজেকশনের Isolation Levels ব্যবহার করা যায়, যা ট্রানজেকশনের কার্যকলাপের মধ্যে বিভিন্ন রকমের concurrency control পরিচালনা করে। নিম্নলিখিত Isolation Levels সমর্থিত:
H2 ডেটাবেজে ট্রানজেকশন ম্যানেজমেন্টের মাধ্যমে আপনি নিশ্চিত করতে পারেন যে আপনার ডেটাবেজের ডেটা সঠিক, স্থায়ী এবং সুরক্ষিত থাকে। Commit
এবং Rollback
হল ডেটাবেজে সর্বোচ্চ অখণ্ডতা এবং নিয়ন্ত্রণ বজায় রাখার জন্য অপরিহার্য টুল।
common.read_more