شناسایی کاربر در تمامی جداول پایگاه داده mysql
با سلام خدمت شما دوستان عزیز
من یک جدول به نام register در mysqlساخته ام که افرادیکه درسایت ثبت نام میکنند، مشخصاتشان در آن ذخیره میشود و یک کد خاص به هر فرد داده میشود.
وهمچنین یک جدول دیگری به نام <<زیرمجموعه >> ساخته ام که در این صفحه، برخی کاربران میتوانند کاربران دیگری را به زیرمجموعه خود در بیاورند.
سوال من این است که چگونه در جدول دوم ( جدول زیر مجموعه ) برای شناسایی افراد، از کد های جدول اول (جدول register) استفاده شود؟
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
سلام توی جدول اول آی دی کاربر رو بگیر و یه فیلد توی جدول دوم بزن که مقدار ای دی جدول اول رو ذخیره کنه حالا میتونی جدولاتو هم innodb بزنی که با استفاده از forignkey بهم ریلیشن داشته باشند اگر هم نخواستی myisam بزن و توی کدها با استفاده از join کویری بزنی
خیلی سخت نیست آسونه
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
سپاس از پاسختون
اگر امکانش هست یک راه کار تضمین شده برای ساختن کلید خارجی بهم بدید، چون هر روشی که تو وبسایت های مختلف هست رو امتحان کردم، جواب نمیده
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
منظورتون رو از تضمین متوجه نشدم ولی اینو یه نگاه بیانداز
https://www.google.com/search?q=sql+...hrome&ie=UTF-8
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
نقل قول:
نوشته شده توسط
charcharkh
اگه امکانش هست ساختن کلید خارجی در phpmyadmin رو توضیح بدید.
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
بفرمایید
https://www.google.com/search?q=how+...hrome&ie=UTF-8
یه جستجوی ساده هم توی گوگل بزنی به نتیجه میرسی خیلی سخت نیست
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
ببینید من در جدول رجیستر یک ستون به نام id به عنوان کلید اصلی تعریف کردم
و در جدول زیرمجموعه یک ستون به نام admin id تعریف کردم بعد از اون به قسمت structure این جدول رفتم و در قسمت relation فیلد admin id رو کلید خارجی فیلد id قرار دادم در ضمن فیلد admin id رو هم به صورت index قرار دادم
ولی در آخر ارور Error: Field 'admin id' doesn't have a default value رو ازم میگیره . من default value روی none تنظیم کردم و قتی هم که روی null تنظیم میکنم در این ستون همه رکورد ها رو null میزنه.
علتش این ارور چیه؟
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
نبایست null بزاری !!!!!!!!
داره میگه فرمت ستون admin id' مثل ستون id' در جدول اول نیست
اگر id داره int ذخیره میکنه با طول مثلا 10 اون admin id' هم بایست دقیقا همین باشه
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
من دقیقا همین کارو کردم ولی بازم همین پیامو میده
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql
سلام. برای این برنامه شما لازم هست یک رابطه یک به چند برای جدول هاتون ایجاد کنید
کلید اصلی جدول کاربران شما باید داخل جدول زیر مجموعه ها بیاد تا مشخص بشه کدام کاربر با کدام کاربر ارتباط داره
این لینک رو مطالعه کنید، وقتی به درک کاملی از روابط جدول ها برسید به راحتی میتونید کارتون رو دیباگ کنید
نقل قول: شناسایی کاربر در تمامی جداول پایگاه داده mysql