PDA

View Full Version : سلام من تازه کار با بانک رو شروع کردم این دیتابیس رو چجور به روش صحیح بسازم ؟



Mosafers
سه شنبه 12 دی 1391, 20:58 عصر
عکش رو پیوست کردم فقط نمیدونم نوع داده ها و سایر اطلاعات رو چجور طراحی کنم فکر کنم روشی که خودم طراحی کردم مشکلاتی داره....


اگه شما بودید چگونه این بانک رو طراحی میکردید

لطفا یه کم وقت بذارید کمکم کنید...

========================================

1- تاریخ تولد پدر: تاریخ تولد مادر:
2- نسبت فامیلی والدین: دارد ندارد در صورت تیک خوردن دارد فیلدهای زیر فعال شوند
دختر عمو پسر عمو دختر خاله پسر خاله دختر عمه پسر دایی دختردایی پسرعمه فامیل دور
3- وضعیت خانوادگی: دارای زیر مجموعه فوت پدر فوت مادر اعتیاد پدر اعتیاد مادر حبس والدین طلاق
4- زندگی با: دارای فیلدهای پدر و مادر پدر مادر دیگران(فضا در نظر گرفته شود برای نوشتن )
5- فرزند چندم خانواده..........تعدادخواهر ............تعدادبرادر............تعد ادخواهرمعلول بزرگتر تعداد خواهر معلول کوچکتر تعداد برادر معلول بزرگتر تعداد خواهر معلول کوچکتر
6- وضعیت اشتغال والدین: پدر: شاغل بیکار در صورت اشتغال نوع شغل و پست و محل کار دقیقا قید شود
شغل مادر: خانه دار شاغل در صورت تیک خوردن اشتغال نوع شغل و ......مشخص شود.
7- میزان سواد والدین combo : پدر مادر
8- میزان ارتباط وهمکاری والدین با مدرسه: دارای زیرمجموعه فیلدهای: بسیار زیاد خوب متوسط کم بسیار کم
9- تحت پوشش بیمه : می باشد نمی باشد در صورت می باشد فیلد خدمات درمانی تامین اجتماعی نیروهای مسلح سایر بیمه ها فعال شود.
10- تحت پوشش کمیته امداد بهزیستی
11- دارای کارت شناسایی از بهزیستی می باشد نمی باشد
12- وضعیت ایثارگری پدر: دارای زیر مجموعه فرزند شهید فرزند آزاده فرزند جانباز در صورت تیک خوردن فرزند جانباز این فیلدها فعال شوند: جانباز زیر25درصد 25 تا 50 درصد 51 تا 75 درصد بالاتر از 75درصد
13- میزان در آمد تقریبی خانواده:.....................ریال
14- دانش آموز : یتیم می باشد نمی باشد

ordebehesht
سه شنبه 12 دی 1391, 21:35 عصر
3 تا نکته میگم نه جواب رو بعضی جاها درسته بعضی جا نه
برای داده های روشون عملیات ریاضی انجام نمیدی nvarchar بگیر
از char و یا nchar استفاده نکن چرا که فضای زیلدی میگیره مثلا char(8) به اندازه 8 واحد خونه رزرو میکنه اگه داده به طول 6 وارد شه بقیه فضا هدر میره یعنی 2 تا بدون استفاده میمونه اما تو nvarchar اگه کاراکتر ما 5 تا باشه طولش به اندازه 5 تا فضا میگیره درسته ما حد مجاز براش 8 تا تعیین کردیم و خاصیت varchar نسبت char به مقدار فضای هدری هستش
امید وارم بدردت بخورده

Mosafers
سه شنبه 12 دی 1391, 23:50 عصر
مرسی بابت راهنمایتون...
من توی بعضی موارد طول nvarchar رو میکردم 20 که در فضا هم تاثیر داشت ، مطمئنا این روش تاثیر داره؟

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

zarrinnegar
چهارشنبه 13 دی 1391, 00:52 صبح
برای گزینه هایی که مقدار درست نادرست و یا بلی و خیر دارند از bit استفاده کن
درباره فیلدهایی که یک گزینه انتخاب میشود و بعد توضیح دارد من چیزی ندیدم مثلا شغل مادر: خانه دار شاغل در صورت تیک خوردن اشتغال نوع شغل و ......مشخص شود.
کجا مشخص شود؟
و چرا همه فیلدها از نوع Tinyint است و جدول های فرعی هم داری؟ مثلا بسیار زیاد خوب متوسط کم بسیار کم چطوری ذخیره میشود ؟
یا این
دختر عمو پسر عمو دختر خاله پسر خاله دختر عمه پسر دایی دختردایی پسرعمه فامیل دور
چطوری ذخیره میشن؟
لابد میخوای بگی
1 - دختر عمو
2 - پسر عمو
3 - دختر خاله
.
.
.

خوب اینها میشن یه جدول دیگه

اگر در جدولی دیگر است پس چرا Allow null اون تیک خورده ؟
در جدولی که کد جدول دیگر استفاده میشود نباید AllowNull تیک بخورد چون نمیتواند به جدول دوم ارتباط دهد

کلا اطلاعاتی رو که باید یکی از 2 تا رو باید انتخاب کنه از نوع Bit بزار و چند انتخابه رو بکن یک جدول
یعنی یک جدول اصلی داری و به تعداد فیلدهایی که چندین انتخاب دارن هم یک جدول برای هر کدوم

یک بازنگری کن بعد بگو تغییراتت چی بوده

Mosafers
چهارشنبه 13 دی 1391, 01:16 صبح
سلام ؛ واقعا دست و پنجت درد نکنه

برای گزینه هایی که مقدار درست نادرست و یا بلی و خیر دارند از bit استفاده کن
خیلی فرق با tinyint داره آخه چون حجم اشغال شده برا هر دو 1 بایت هستش...


درباره فیلدهایی که یک گزینه انتخاب میشود و بعد توضیح دارد من چیزی ندیدم مثلا شغل مادر: خانه دار شاغل در صورت تیک خوردن اشتغال نوع شغل و ......مشخص شود.
کجا مشخص شود؟
آره باید تعریف شود.


دختر عمو پسر عمو دختر خاله پسر خاله دختر عمه پسر دایی دختردایی پسرعمه فامیل دور
آینا توی یک combo هستند که بعد از انتخاب index رو دخیره میکنم.
یا بهتره براش جدول ایجاد کنم؟ خوب الان وقتی برای اینا یک جدول ساختم Allow Null باید تیک داره باشه یا نه ؟؟؟


اگر در جدولی دیگر است پس چرا Allow null اون تیک خورده ؟
متوجه نشدم.


در جدولی که کد جدول دیگر استفاده میشود نباید AllowNull تیک بخورد چون نمیتواند به جدول دوم ارتباط دهد
اینم نفهمیدم لطفا واضح تر توضیج بدید؟