PostgreSQL میں ذخیرہ شدہ طریقہ کار کیسے بنائیں

Postgresql My Dhkhyr Shd Tryq Kar Kys Bnayy



PostgreSQL کے ساتھ، ذخیرہ شدہ طریقہ کار بنانا ممکن ہے جو مختلف معمولات کی وضاحت کرتے ہیں جنہیں کال کرنے پر عمل میں لایا جانا چاہیے۔ یہ معمولات SQL بیانات پر مشتمل ہیں جو آپ کے ڈیٹا بیس پر متعین کام انجام دیتے ہیں۔ مثال کے طور پر، آپ ایک ذخیرہ شدہ طریقہ کار بنا سکتے ہیں جو آپ کے ٹیبل میں موجود اقدار کو کال کرنے پر اپ ڈیٹ کرتا ہے۔

ذخیرہ شدہ طریقہ کار ڈیٹا بیس کی اصلاح اور دوبارہ استعمال کی صلاحیت کو بڑھانے میں مدد کرتا ہے۔ ایک ہی استفسار پر عمل کرنے کے بجائے، آپ ٹاسک کو ایک ذخیرہ شدہ طریقہ کار کے طور پر بنا سکتے ہیں جسے آپ جب بھی ضرورت ہو کال کریں گے۔ آپ اس پوسٹ کے آخر تک ذخیرہ شدہ طریقہ کار کے بارے میں سب کچھ جان لیں گے۔

PostgreSQL میں ذخیرہ شدہ طریقہ کار کے ساتھ کام کرنا

ایک PostgreSQL صارف کے طور پر، آپ نے محسوس کیا ہوگا کہ PostgreSQL فنکشنز لین دین کو انجام نہیں دیتے۔ اگرچہ لین دین بنانا ممکن ہے، لیکن اس کا ارتکاب کرنا یا اسے پچھلی حالت میں واپس لانا ممکن نہیں ہے۔ تاہم، ذخیرہ شدہ طریقہ کار کا استعمال کرتے ہوئے ان حدود کو نظرانداز کیا جاتا ہے۔







PostgreSQL میں ذخیرہ شدہ طریقہ کار بنانے کے لیے بنیادی نحو یہ ہے:



طریقہ کار بنائیں یا تبدیل کریں طریقہ کار_نام(

پیرامیٹر[s] ڈیٹا_قسم

)

زبان plpsql;

AS $$

ڈیکلیئر

variables_if_any data_type

شروع

منطق

اختتام

$$

دیئے گئے نحو سے نوٹ کرنے والی اہم چیزیں ہیں 'طریقہ_نام' جو کہ وہ نام ہے جسے آپ ذخیرہ شدہ طریقہ کار کے لیے استعمال کریں گے، وہ پیرامیٹرز جنہیں آپ شامل کرنا چاہتے ہیں اور ان کے ڈیٹا کی قسمیں، اور منطق جو بنیادی طور پر SQL بیانات ہیں۔



آئیے تین مثالیں دیتے ہیں تاکہ آپ کو یہ سمجھنے میں مدد ملے کہ PostgreSQL میں ذخیرہ شدہ طریقہ کار کیسے بنایا جائے۔





مثال 1: ایک نمبر کے مربع کا حساب لگانے کے لیے ذخیرہ شدہ طریقہ کار

ہماری پہلی مثال کے لیے، ہم ایک ذخیرہ شدہ طریقہ کار بناتے ہیں جو ٹرمینل پر آؤٹ پٹ پرنٹ کرنے کے طریقے کے طور پر 'RAISE NOTICE' بیان کا استعمال کرتا ہے۔ ذخیرہ شدہ طریقہ کار انٹیجر ویلیو لیتا ہے جو آپ اسے کال کرتے وقت دیتے ہیں اور اس کے مربع کا حساب لگاتے ہیں۔

یہاں ہم ذخیرہ شدہ طریقہ کار کو کیسے بناتے ہیں:



ہم اپنے پیرامیٹر کا نام 'num1' رکھتے ہیں، اور یہ ایک عدد عدد ہے۔ منطق کے حصے کے لیے، ہم اس کی وضاحت کرتے ہیں کہ یہ 'num1' کا مربع کیسے حاصل کرتا ہے اور اسے مربع متغیر کے طور پر اسٹور کرتا ہے۔ جب ہم کمانڈ پر عمل کرتے ہیں تو ہمیں 'CREATE PROCEDURE' آؤٹ پٹ ملتا ہے جو اس بات کی تصدیق کرتا ہے کہ ہم نے ذخیرہ شدہ طریقہ کار کو کامیابی کے ساتھ بنانے میں کامیاب ہو گئے۔

اگلا کام طریقہ کار کو کال کرنا اور اسے متوقع دلیل دینا ہے۔

کال طریقہ کار_نام (دلائل)؛

آپ کو کال آؤٹ پٹ ملے گا جس سے ظاہر ہوتا ہے کہ ذخیرہ شدہ طریقہ کار پر عمل درآمد ہو چکا ہے، اور ہمیں متوقع آؤٹ پٹ مل رہا ہے، جو اس معاملے میں، دلیل کا مربع ہے جسے ہم نے شامل کیا ہے۔

مثال 2: ٹیبل کے اندراج میں اقدار داخل کرنے کا ایک ذخیرہ شدہ طریقہ کار

درج ذیل دو مثالیں دکھاتی ہیں کہ ایک ذخیرہ شدہ طریقہ کار کیسے بنایا جائے جو ڈیٹا بیس ٹیبل کے ساتھ کام کرے۔ آئیے جلدی سے 'طلبہ' ٹیبل بنائیں جس کے ساتھ ہم کام کریں گے۔

اس مثال کے لیے، ہم ایک ذخیرہ شدہ طریقہ کار بناتے ہیں جو صارف کو نئے بنائے گئے ٹیبل میں اقدار داخل کرنے کی اجازت دیتا ہے۔ غور کریں کہ جب ہم ذخیرہ شدہ طریقہ کار کو کال کرتے ہیں تو ہم ان پیرامیٹرز کی وضاحت کیسے کرتے ہیں جن کی ہمیں دلیل کے طور پر شامل کیے جانے کی توقع ہے۔ مزید برآں، ہم اس منطق کی وضاحت کرتے ہیں جو اضافی دلائل لیتی ہے اور INSERT SQL اسٹیٹمنٹ کو 'طلبہ' ٹیبل پر عمل میں لاتی ہے۔

ہم درج ذیل کمانڈ کو چلا کر دستیاب ذخیرہ شدہ طریقہ کار کو چیک کر سکتے ہیں۔

\df

پہلا ذخیرہ شدہ طریقہ کار جسے ہم مندرجہ ذیل آؤٹ پٹ سے دیکھ سکتے ہیں وہ 'add_student' ہے جسے ہم نے پہلے بنایا تھا۔

اب، آئیے اس پر عمل کرنے کے لیے ذخیرہ شدہ طریقہ کار کو کال کریں۔ مندرجہ ذیل تصویر سے پتہ چلتا ہے کہ ہمارے پاس ایک خالی میز کیسے ہے، لیکن ہم نے پہلے طالب علم کو شامل کرنے کے لیے ذخیرہ شدہ طریقہ کار کو کہا:

اگر ہم اپنے ٹیبل میں اقدار کی فہرست بناتے ہیں، تو دیکھیں کہ کال پروسیجر کمانڈ کے ساتھ جو دلائل ہم نے شامل کیے ہیں وہ ہمارے ٹیبل میں ہمارے پہلے طالب علم کی قدریں کیسے ہیں۔ اس طرح آپ ٹیبل میں اقدار داخل کرنے کے لیے ذخیرہ شدہ طریقہ کار بناتے ہیں۔

نوٹ کریں کہ ذخیرہ شدہ طریقہ کار بناتے وقت، آپ کے بیان کردہ پیرامیٹرز کو غلطیوں سے بچنے کے لیے آپ کے ٹیبل میں متوقع چیزوں سے مماثل ہونا چاہیے۔ مزید یہ کہ ڈیٹا کی قسم مماثل ہونی چاہیے۔

مثال 3: ٹیبل کے اندراج کو اپ ڈیٹ کرنے کے لیے ذخیرہ شدہ طریقہ کار

آگے بڑھتے ہوئے، آئیے ایک اور ذخیرہ شدہ طریقہ کار بناتے ہیں جو ٹیبل کے اندراج کو اپ ڈیٹ کرتا ہے۔ اگر آپ ہماری جدول میں اقدار کو اپ ڈیٹ کرنے کا ایک تیز طریقہ حاصل کرنا چاہتے ہیں، تو آپ مندرجہ ذیل طور پر ایک اپ ڈیٹ ذخیرہ شدہ طریقہ کار بنا سکتے ہیں:

واضح کریں کہ آپ WHERE کلیدی لفظ اور SET کلیدی لفظ کا استعمال کرتے ہوئے نئی قدر کا استعمال کرتے ہوئے کس کالم کو اپ ڈیٹ کرنا چاہتے ہیں۔ تب آپ کو تبدیلیوں کو برقرار رکھنے کے لیے COMMIT کلیدی لفظ شامل کرنا چاہیے۔

آئیے اپ ڈیٹ اسٹور شدہ طریقہ کار کو کال کریں اور متوقع دلائل شامل کریں: 'student_id' اور نیا کورس۔

اگر ہم اپنے ٹیبل میں اندراجات کی فہرست بناتے ہیں، تو ہم اس بات کی تصدیق کر سکتے ہیں کہ ہمارے پاس اس مخصوص طالب علم کے لیے اپ ڈیٹ شدہ کورس ہے جسے ہم نے ہدف بنایا ہے۔ اس طرح ایک اپ ڈیٹ ذخیرہ شدہ طریقہ کار کام کرتا ہے۔

نتیجہ

آپ PostgreSQL میں کوئی بھی ذخیرہ شدہ طریقہ کار بنا سکتے ہیں۔ آپ کو صرف پیروی کرنے کے لیے نحو کو سمجھنے اور پھر ذخیرہ شدہ طریقہ کار کے لیے اپنی منطق کی وضاحت کرنے کی ضرورت ہے۔ وہاں سے، ذخیرہ شدہ طریقہ کار کو کال کریں اور تصدیق کریں کہ اس نے توقع کے مطابق عمل کیا ہے۔ اس پوسٹ نے PostgreSQL میں ذخیرہ شدہ طریقہ کار کے بارے میں وضاحت کی ہے اور ان کو بنانے کے طریقے کے بارے میں مثالیں فراہم کی ہیں۔