ببخشید میخواستم ببینم اگر مثلا برای کاربران یه id تعریف کنیم در پایگاه داده با توجه به اینکه کاملا منحصر بفرده میتونه بعنوان هر سه تا کلیدی که استاد توضیح دادن(primary,index,forign) انتخاب بشه؟
سلام.
Primary Key هم یونیک هست هم ایندکس.
اما در مورد Foriegn Key (کلید خارجی) فیلدی است که به Primary Key جدول دیگر اشاره میکند.
یعنی جدولی که داخلش Foreign Key وجود دارد، این جدول child شناخته میشود و جدولی که این کلید خارجی به کلید اصلیش اشاره میکنه، جدول مرجع یا parent شناخته میشه.
توضیحات در این لینک
مثال:
table Post:
id | title | content
-------------------------
1 title1 content1
2 title2 content2
3 title3 content3
table Comment:
id | message | post_id
-------------------------
1 msg1 1
2 msg2 2
3 msg3 1
+ کامنت های 1 و 3 مربوط به پست 1 هستن و کامنت 2 مربوط به پست 2 (با توجه به کلید خارجی یعنی post_id)
* id جدول Post کلید اصلی(PK) است.
* id جدول Comment کلید اصلی(PK) است.
* post_id جدول Comment کلید خارجی(FK) به فیلد id جدول Post است.
+ در مقایسه ی این دو جدول، جدول Post مرجع یا parent و جدول Comment فرزند است.