سلام دوستان عزیزم؛
خسته نباشین.
من یک جدول بانک اطلاعاتی برای مشخصات پرسنل ایجاد کردم؛ میخواستم ببینم با توجه به اینکه بعدا اگه بخوام روی این فیلدها فرمولهایی اعمال کنم و همچنین از نظر هدر ندادن حجم حافظه؛ آیا نوع و مقدار فیلدها رو خوب در نظر گرفتم؟
و حالا این شکل رو ببینید:
struct-of-bank.jpg
توضیح فیلدها به این شکل هستند:
1- کد پرسنلی که این رو Primary key در نظر گرفتم(طولش حداکثر 5 رقمه). آیا وقتی Priamary در نظر می گیریم ، به نوعی Index هم میشن دیگه درسته؟ نمیخواد قبل از این فیلد یه فیلد ردیف هم بذارم؟ اصلا فیلد ردیف نیازم میشه یا نه؟
2 و 3و 4- که به ترتیب نام، نام خانوادگی و نام پدر هستند.
5- تاریخ تولد. فکر کنم قبلا که فروم رو می دیدم دوستا میگفتن که اگه فیلد تاریخ رو text انتخاب کنیم می تونیم تو محاسبات شرکتشون بدیم! آیا درست میگم یا اشتباهه؟ محاسبات روی این فیلد زمانی بدرد میخوره که بخوایم به طرف هر چند سال یه گروه بدیم و مستقیما با این فیلد جهت محاسبات در ارتباطیم.
6- محل تولد.
7- (NoIdsn): شماره شناسنامه، که از نوع گرفتمش ولی فکر کنم زیاد باشه.
8- (NoNatnl) : کد ملی که int گرفتمش.
9- (EduLast) :آخرین مدرک تحصیلی.
10-(EduType): رشته تحصیلی.
11-(NoInsrnc): شماره بیمه.
12-(Address):آدرس .
13-(Tel_num):شماره تلفن.
حالا در اینجا چند تا سوال برام پیش اومده:
آیا کد ملی رو نباید text یا char در نظر بگیرم؟ الان تلفن رو هم همین نوع در نظر گرفتم تا صفر اول موبایل رو حذف نکنه؛ خب کد ملی ها هم که همش اولش صفر داره دیگه؟ اگه بخوایم حذف نشه باید از text بگیریم یا نه؟
برای وضعیت نظام وظیفه و همچنین مدرک تحصیلی بنظرتون از چه نوع بگیرم؟ مثلا زیر پنجم ابتدایی رو بذارم یک ، بعدش سیکل رو بذارم دو و الی آخر؟
برای وظیفه عمومی چی؟ این رو هم بصورت کد برم جلو؟ یعنی 1 انجام داده و 2 معاف و 3 معافیت پزشکی.
ب) همچنین میشه بگید برای فیلدهای جزئی از یک حقوق که اعدادش بالای 100هزارتومن هستن، همون int آیا خوبه؟
ممنون میشم اگه جوابمو بدین؛ آخه حتما شماها تو تجربیاتتون از این موارد داشتین و باهاش برخورد کردین. البته بیشتر هدفم تو این سوال همون فیلد تاریخ و محاسبات روی این فیلد هستش و همچنین اینکه فیلد کلید اصلی رو خوب در نظر گرفتم یا نه؟