PostgreSQL میں ترتیب کو کیسے ری سیٹ کریں۔

Postgresql My Trtyb Kw Kys Ry Sy Kry



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

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

PostgreSQL میں ترتیب کو دوبارہ ترتیب دینے کے طریقے کی مثال

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







اس مثال کے لیے، ہم درج ذیل 'user_details' ٹیبل کے ساتھ کام کریں گے۔ ہمارا فوکس 'user_id' کالم ہے جو 100 سے شروع ہونے والا ایک خودکار اضافہ ترتیب ہے۔





اپنے ڈیٹا بیس میں مختلف ترتیبوں کی فہرست بنانے کے لیے درج ذیل کمانڈ کو چلائیں:





\ds

ہمارے کیس کے لیے، ہم 'user_id' ترتیب کو نشانہ بناتے ہیں۔



ترتیب پر مزید تفصیلات حاصل کرنے کے لیے، 'منتخب' استفسار کو چلائیں جیسا کہ درج ذیل میں دکھایا گیا ہے:

منتخب کریں * sequence_name سے؛

ہم دیکھ سکتے ہیں کہ موجودہ ترتیب میں آخری قدر 104 ہے۔ ہم اس قدر کو دوبارہ ترتیب دیتے ہیں اور ایک نئی قدر کی وضاحت کرتے ہیں جو نئی اندراجات میں ہوگی۔

PostgreSQL ترتیب کو دوبارہ ترتیب دینے کے لیے، درج ذیل کمانڈ کا استعمال کریں:

ترتیب کو تبدیل کریں sequence_name قدر کے ساتھ دوبارہ شروع کریں؛

ہمارے معاملے کے لیے، ہم یہ کہتے ہیں کہ ہم ترتیب کو دوبارہ شروع کرنا چاہتے ہیں اور 20 پر نئی اندراجات شروع کرنا چاہتے ہیں۔ درج ذیل کمانڈ کو چلانے کے بعد، ہمیں ایک آؤٹ پٹ ملتا ہے، جیسا کہ درج ذیل میں دکھایا گیا ہے، جو اس بات کی تصدیق کرتا ہے کہ ترتیب کو تبدیل کر دیا گیا ہے۔

اگر ہم SELECT اسٹیٹمنٹ کا استعمال کرتے ہوئے اپنی ترتیب کی تفصیلات حاصل کرنے کے لیے پہلے والی کمانڈ کو دوبارہ چلاتے ہیں، تو ہم دیکھ سکتے ہیں کہ اس کیس کے لیے نئی 'last_value' وہ قدر ہے جو ہم نے ALTER کمانڈ کے ساتھ بتائی ہے۔

آئیے اپنے ٹیبل میں ایک نئی انٹری ڈالتے ہیں کہ کیا ہوتا ہے۔ درج ذیل تصویر INSERT استفسار اور نتائج کو دکھاتی ہے جو ہمیں SELECT سٹیٹمنٹ چلانے کے بعد حاصل ہوتے ہیں۔ نوٹ کریں کہ کس طرح نئی انٹری کا 'user_id' 20 پر سیٹ کیا گیا ہے۔ ہم جو بھی نئی اندراجات کریں گے ان کی 'user_id' آخری قدر کی بنیاد پر تیار کی جائے گی جو 20 ہے۔

اگر ہم دوسرا ان پٹ بناتے ہیں تو اس کا 'user_id' 21 ہوگا اور اسی منطق کا استعمال کرتے ہوئے ترتیب آگے بڑھے گی۔ اس طرح آپ PostgreSQL میں ایک ترتیب کو دوبارہ ترتیب دیتے ہیں۔ نوٹ کریں کہ 'ری سیٹ' کمانڈ موجودہ ریکارڈز کو متاثر نہیں کرتی ہے۔ یہ صرف ان اندراجات کے لیے نئی ابتدائی قدر کی وضاحت کرتا ہے جو آپ ترتیب کو دوبارہ ترتیب دینے کے بعد بناتے ہیں۔

نتیجہ

PostgreSQL کے ساتھ، آپ کے بنیادی کلیدی کالم میں عددی اقدار کو خود بخود پیدا کرنے کا طریقہ چیزوں کو آسان بناتا ہے۔ جب آپ کے پاس ایک موجودہ ترتیب ہے، تو آپ ALTER SEQUENCE استعمال کر سکتے ہیں۔
RESTART WITH آپشن کے ساتھ کمانڈ یہ بتانے کے لیے کہ آپ کس ترتیب کو ری سیٹ کرنا چاہتے ہیں اور کس قدر کو ترتیب میں آخری قدر کے طور پر سیٹ کرنا ہے۔ اس طرح، نئی اندراجات میں نئی ​​آخری قدر کی بنیاد پر انٹیجر ویلیو تیار کی جائے گی۔ یہ سمجھنے کے لیے پیش کردہ مثال سے رجوع کریں کہ PostgreSQL ترتیب کو دوبارہ ترتیب دینا کیسے کام کرتا ہے۔