مائی ایس کیو ایل ڈیٹا بیس اسکیم لکھنے کے لیے ابتدائی رہنما۔

مائی ایس کیو ایل ڈیٹا بیس اسکیم لکھنے کے لیے ابتدائی رہنما۔

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





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





کیا میں دوہری مانیٹر کے لیے ایچ ڈی ایم آئی سپلٹر استعمال کر سکتا ہوں؟

ٹیبل نحو بنائیں۔

شروع کرنے کے لیے ، اپنا پسندیدہ ٹیکسٹ ایڈیٹر کھولیں۔ ڈیٹا بیس سکیما بنانے کے لیے سادہ ٹیکسٹ فائل سے زیادہ کچھ نہیں چاہیے۔ ایک ڈیٹا بیس ایک سے زیادہ جدولوں پر مشتمل ہوتا ہے ، ہر ایک کالموں پر مشتمل ہوتا ہے ، اور ایک ٹیبل بنانے کے لیے CREATE TABLE نحو استعمال کیا جاتا ہے۔ یہاں ایک بنیادی مثال ہے:






CREATE TABLE users (
id INT NOT NULL,
is_active TINY INT NOT NULL,
full_name VAR CHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL
);

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

صحیح کالم کی اقسام استعمال کریں۔

جیسا کہ اوپر دکھایا گیا ہے ، ٹیبل پر مشتمل کالم کوما سے الگ کیے گئے ہیں۔ ہر کالم کی تعریف تین حصوں پر مشتمل ہے:



COL_NAME TYPE [OPTIONS]

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

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





کالم کے اختیارات کی وضاحت کریں۔

کالم کی وضاحت کرتے وقت مختلف آپشنز بھی ہوتے ہیں جن کی آپ وضاحت کر سکتے ہیں۔ ذیل میں کی ایک اور مثال ہے۔ ٹیبل بنائیں۔ بیان:


CREATE TABLE users (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(100) NOT NULL UNIQUE,
status ENUM('active','inactive') NOT NULL DEFAULT 'active',
balance DECIMAL(8,2) NOT NULL DEFAULT 0,
date_of_birth DATETIME,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);

مندرجہ بالا تھوڑا سا خوفناک لگ سکتا ہے ، لیکن پریشان نہیں ، یہ بہت آسان ہے۔ ٹوٹ گیا ، مندرجہ بالا بیان میں کیا ہو رہا ہے:





  • ٹیبل کی رفتار اور کارکردگی میں مدد کے لیے آپ کو ممکنہ طور پر تمام کالموں پر NOT نہیں استعمال کرنا چاہیے۔ یہ محض اس بات کی وضاحت کرتا ہے کہ جب قطار داخل کی جائے تو کالم کو خالی / کالعدم نہیں چھوڑا جا سکتا۔
  • کالم کا سائز ہمیشہ حقیقت پسندانہ طور پر چھوٹا رکھنے کی کوشش کریں کیونکہ یہ رفتار اور کارکردگی کو بہتر بنانے میں مدد کرتا ہے۔
  • کی آئی ڈی کالم ایک عدد ہے ، جدول کی بنیادی کلید بھی ہے جس کا مطلب ہے کہ یہ منفرد ہے ، اور ہر بار ریکارڈ داخل ہونے پر ایک سے بڑھ جائے گا۔ یہ عام طور پر ان تمام ٹیبلز پر استعمال کیا جانا چاہیے جو آپ بناتے ہیں تاکہ آپ ٹیبل کے اندر کسی ایک قطار کا آسانی سے حوالہ دے سکیں۔
  • کی حالت کالم ایک ENUM ہے اور اس کی قیمت 'فعال' یا 'غیر فعال' ہونی چاہیے۔ اگر کوئی قیمت متعین نہیں کی گئی ہے تو ، ایک نئی صف 'فعال' کی حیثیت سے شروع ہوگی۔
  • کی بقیہ کالم ہر نئی صف کے لیے 0 سے شروع ہوتا ہے ، اور یہ ایک رقم ہے جو دو دو اعشاریہ پوائنٹس کی شکل میں ہوتی ہے۔
  • کی پیدائش کی تاریخ کالم محض ایک تاریخ ہے لیکن یہ بھی ایک خالی قیمت کی اجازت دیتا ہے کیونکہ پیدائش کی تاریخ پیدائش کے وقت معلوم نہیں ہوسکتی ہے۔
  • آخری ، تخلیق_ات کالم ایک ٹائم اسٹیمپ ہے اور موجودہ وقت میں ڈیفالٹ ہوتا ہے جب قطار داخل کی جاتی تھی۔

مذکورہ بالا ایک عمدہ ساختہ ڈیٹا بیس ٹیبل کی ایک مثال ہے ، اور اسے آگے بڑھتے ہوئے مثال کے طور پر استعمال کیا جانا چاہئے۔

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

یہاں ایک مثال ہے:


CREATE TABLE users (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(100) NOT NULL UNIQUE,
full_name VARCHAR(100) NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
) engine=InnoDB;
CREATE TABLE orders (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
userid INT NOT NULL,
amount DECIMAL(8,2) NOT NULL,
product_name VARCHAR(200) NOT NULL,
FOREIGN KEY (userid) REFERENCES users (id) ON DELETE CASCADE
) engine=InnoDB;

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

یہ بھی نوٹ کریں انجن = InnoDB مندرجہ بالا بیان کے آخر میں اگرچہ InnoDB اب ڈیفالٹ mySQL ٹیبل ٹائپ ہے ، یہ ہمیشہ نہیں تھا ، لہذا اسے صرف محفوظ پہلو پر رہنے کے لیے شامل کیا جانا چاہیے ، کیونکہ جھرن لگانا صرف InnoDB ٹیبلز کے ساتھ کام کرتا ہے۔

ایپل میوزک کے لیے آئی ٹیونز گفٹ کارڈ کا استعمال کیسے کریں۔

اعتماد کے ساتھ ڈیزائن۔

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

اپنی اسکیمہ کو جگہ پر رکھیں ، اس بات کو یقینی بنائیں کہ آپ ان کے ساتھ اسے استعمال کرنا جانتے ہیں۔ ضروری SQL کمانڈ .

بانٹیں بانٹیں ٹویٹ ای میل۔ ایس کیو ایل میں شامل ہونے کے ساتھ ایک سے زیادہ ڈیٹا بیس کی میزیں کیسے پوچھیں۔

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

اگلا پڑھیں۔
متعلقہ موضوعات۔ مصنف کے بارے میں میٹ ڈیزک۔(18 مضامین شائع ہوئے) میٹ ڈیزک سے مزید

ہماری نیوز لیٹر کو سبسکرائب کریں

ٹیک ٹپس ، جائزے ، مفت ای بکس ، اور خصوصی سودوں کے لیے ہمارے نیوز لیٹر میں شامل ہوں!

سبسکرائب کرنے کے لیے یہاں کلک کریں۔