ایجاد کلید خارجی یا Foreign key

- 4 هفته پیش
توسط Alimotreb آپدیت شد
Awmx ( 4093 تجربه )
4 هفته پیش

سلام دوستان
زمانی که یه پروژه لاراولی رو استارت میزنیم هر مایگریشنی که ایجاد کنیم انجین اون MyISAM قرار میگیره که برای تغیرش یا داخل همون مایگریشن میشه کدشو نوشت و یا داخل فایل کانفیگ دیتابیس تنظیمش کرد.
طبق مستندات mysql این انجین از کلید خارجی یا Foreign key پشتیبانی نمیکنه. حالا سوالی که برام پیش اومده اینه که چطور یسری از پروژه ها انجین تیبل هاشون MyISAM هستش و کلید خارجی هم ایجاد کردن! توی دوره های اموزشی هم این مورد رو دیدم

بهترین پاسخ انتخاب شده توسط Awmx
Alimotreb
4 هفته پیش

سلام مجدد
@awmx

انجین innoDB به صورت دیفالت روی تمامی ورژن های mysql هست
به نظر من روی همه قرار بگیره بهتره
چون روی همه جا همین ست هست و بعدا به مشکل نخواهید خورد
از لحاظ عملکرد و سرعت پردازش هم بسیار مناسبه.

Alimotreb ( 91342 تجربه )
4 هفته پیش

سلام
@awmx

mysql
mariadb
اولی از نسخه 5.6
دومی از نسخه 8
9
به بعد ساپورت میکنن! مشکلی نداشتن!

Awmx ( 4093 تجربه )
4 هفته پیش

@Alimotreb
اما برای بنده ارور میداد که با تغیر به innoDB مشکل برطرف شد.ورژن MYSQL هم 5.7 هستش(البته فقط برای یک جدول که مربوط میشد به درگاه پرداخت و به قابلیت های لاک کردن و transaction نیاز بود)
اگه توی کانفیگ دیتابیس انجین رو innoDB قرار بدم و هرمایگریشنی ایجاد شد این انجین براش ست بشه مشکلی نداره؟ یا فقط توی جداول مورد نیاز بهتره این انجین قرار بگیره؟

Alimotreb ( 91342 تجربه )
4 هفته پیش

سلام مجدد
@awmx

انجین innoDB به صورت دیفالت روی تمامی ورژن های mysql هست
به نظر من روی همه قرار بگیره بهتره
چون روی همه جا همین ست هست و بعدا به مشکل نخواهید خورد
از لحاظ عملکرد و سرعت پردازش هم بسیار مناسبه.

برای ارسال پاسخ باید وارد سایت شوید