پیشنهاد یک structure خوب برای دیتابیس چت های دو نفره
سلام
دوستان لطفا یک structure خوب پیشنهاد بدید برای چت های دو نفره توی برنامه، به شکلی که کوئری گیری ازش بهینه باشه و سریع بشه به پیام ها دسترسی پیدا کرد.
به طور مثال چیزهایی که در دیتابیسم دارم و نیاز دارم:
جدول user:
id | user_name
و جدول یا جداول مورد نیاز برای پیام ها:
id
message to
message from
send_datetime
read_datettime
1 پاسخ
سلام و درود
فکر کنم دوی قسمت دوم منظورتون از جدول همون فیلد باشه
خوب چون چت شما دو نفره هست به راحتی می تونین با دو جدول کارتون رو انجام بدین
اما من برای n نفر این رو پیشنهاد می دم
جدول 1- tblUsers
-------
شامل مشخصات افراد هست شامل id و firstName و lastName که id کلید اصلی است
جدول دوم - tblMessages
---------
شامل
id به عنوان کلید اصلی و autoincrement
idSender بعنوان کلید فرعی از جدول users
message
date
idResiver بعنوان کلید فرعی از جدول users
----------------------------------------------
وقتی که هر فرد 1 برای فرد 2 پیغامی ارسال می کند، فرستنده ، گیرنده و متن پیام و تاریخ ثبت می شود
هنگام گزارش گیری به عنوان مثال:
پیام های ارسال شده و دریافت شده بین شخص 1 و 2 از منظر شخص 1:
select * from tblMessage where idSender =@user1 and idResiver =@user2
order by date
و پیام های ارسال شده و دریافت شده بین شخص 1 و 2 از منظر شخص 2:
select * from tblMessage where idSender =@user2 and idResiver =@user1
order by date
انشاالله که مفید واقع شده باشد
موفق باشید