যদিও বিদেশী মূল নামগুলি যে কোনও হতে পারে, সারণীর নামটি প্রথমে রাখার কনভেনশন অনুসরণ করা আসলে একটি ভাল অনুশীলন।
এর সর্বাধিক গুরুত্বপূর্ণ কারণ হ'ল বিদেশী কী নামগুলি অবশ্যই একটি ডাটাবেসের মধ্যে অনন্য হতে হবে (সূচকের নামের সাথে বিপরীতে, যা প্রতিটি টেবিলের মধ্যেই অনন্য হতে হবে)। সুতরাং, এই সম্মেলনটি অনুসরণ করে, প্রতিটি টেবিলের মধ্যে বিদেশী মূল নামগুলি কেবল অনন্য হতে হবে।
ব্যক্তিগতভাবে, আমি কনভেনশনটি ব্যবহার করি [table_name]_fk_[field_name]
।
আপনার বিদেশী কীগুলির নাম দেওয়ার জন্য, আপনাকে কেবলমাত্র বিদেশী কী পরিবর্তে টেবিলের প্রতিবন্ধকতা স্পষ্টভাবে স্পিল করতে হবে।
সাধারণ পদ্ধতি (স্বয়ংক্রিয় নামকরণের ফলাফল হবে [table_name]_ibfk_[index]
):
ALTER TABLE `[table_name]`
ADD FOREIGN KEY (`[field_name]`)
REFERENCES `[foreign_table_name]`(`[foreign_field_name]`);
সুস্পষ্ট পদ্ধতি (ফলাফল হবে [table_name]_fk_[field_name]
):
ALTER TABLE `[table_name]`
ADD CONSTRAINT `[table_name]_fk_[field_name]`
FOREIGN KEY (`[field_name]`)
REFERENCES `[foreign_table_name]`(`[foreign_field_name]`);