ورود

View Full Version : سوال: سر ریزی در mysql



alirezara
یک شنبه 11 مرداد 1394, 09:47 صبح
با سلام و خسته نباشید خدمت دوستان عزیز.

دوستان برای من یه سوالی پیش اومده که حقیقتش هر چی توی اینترنت دنبال جوابش میگردم چیزی پیدا نکردم.

فرض کنید ما یه جدول داریم که یکی از فیلد های اون از نوع int هست محدوده ی اعداد مجاز بدون علامت در نوع int از 0 تا
4294967295 هست. حالا اگر تعداد رکوردهای ما از 4294967295 بیشتر بشه ما باید چکار کنیم؟ یه راه حل اینکه از ابتدا نوع رو روی BIGINT قرار بدیم. اما من می خواهم نوعINT باشه.

با تشکر از همه ی دوستان.

sempay_ninjutsu
سه شنبه 27 مرداد 1394, 09:36 صبح
با سلام و خسته نباشید خدمت دوستان عزیز.

دوستان برای من یه سوالی پیش اومده که حقیقتش هر چی توی اینترنت دنبال جوابش میگردم چیزی پیدا نکردم.

فرض کنید ما یه جدول داریم که یکی از فیلد های اون از نوع int هست محدوده ی اعداد مجاز بدون علامت در نوع int از 0 تا
4294967295 هست. حالا اگر تعداد رکوردهای ما از 4294967295 بیشتر بشه ما باید چکار کنیم؟ یه راه حل اینکه از ابتدا نوع رو روی BIGINT قرار بدیم. اما من می خواهم نوعINT باشه.

با تشکر از همه ی دوستان.

سوالتونو واضح بپرسید....شما یه فیلد دارین اندازش اینه بعد این قضیه به تعداد رکورد های شما چه ارتباطی داره!!!!!!!!!!
اگه اونجوری که من فهمیدم منظورتون اینه که چیزی که میخایم تو این ستون بریزیم زیاد تره بازم بستگی به شرایط شما داره و نحوه رفتارتون با این ستون این حچم اندازه دیتا مربوط به کار روتینی که یه سامانه انجام میده نیست چون هر حذف و اضافه شما به کندی صورت میگیرد و لاگ این دیتابیس یه چیزه وحشتناکی میشه....اگه بازم صورت مسئله کارتو بگی یه راه میگم انجام بدین اگر نه نوع تایپ رو عوض کنید یا جدول خودتون رو پارتیشن کنید و در دو قسمت اطلاعات را نگهداری کنید

golbafan
سه شنبه 27 مرداد 1394, 09:41 صبح
احتمالا منظور ایشون فیلد ID هست
بهترین راه هم استفاده از bigint هست تا آی دی های بیشتری رو بشه ذخیره کرد

اما اگر اصرار دارید از فیلد integer استفاده بشه میتونی بعد از تمام شدن ظرفیت جدول!!! یک جدول جدید ایجاد کنی