View Full Version : سوال: سوال کلی در مورد پایگاه داده در SQL SERVER
Hsimple11
پنج شنبه 16 خرداد 1387, 00:45 صبح
با سلام.
من در حال نوشتن برنامه ای نسبتا حجیم هستم و از SQL SERVER استفاده میکنم.
دو تا سوال داشستم :
1- میخواستم بدونم اگه بخوایم فرمامون رو در Runtime بسازیم بهترین زمان برای release کردن اونا چه موقع و توسط چه رویدادیه؟
2- با توجه به اینکه تعداد فرم ها و داده های من متعدد است آیا برای افزایش سرعت database خود بهتره تعداد table های کم با field های زیاد داشته باشم یا نه تعداد جدولهایم رو زیاد کنم؟ اگه میشه اساتید مقداری در مورد راهکارهای افزایش سرعت در مورد database های SQL توضیح بدن یا اگه قبلا بحث شده لینکش رو بذارن. اینکه اصول افزایش سرعت چه زمان جستجوی یا... در مورد بانکهای با داده های زیاد چی هست و اینکه بهتره فیلدهامون زیاد باشه یا تعداد table ها
با تشکر...
اصغر (پآچ)
پنج شنبه 16 خرداد 1387, 01:12 صبح
سلام
در مورد سئوال دومت بنظر بنده بهتره تعداد جداولت زیاد باشه و با Join اونها رو به هم ارتباط بدی البته این نظر شخصی منه اما من از دوستای دیگه هم این سوال رو پرسیده بودم پیشنها اونها اینه که تعداد فیلد افزایش پیدا کنه نه تعداد جداول چون Join کردن مدت زمان جستجو رو افزایش میده!
انتخاب نهایی رو خودت میکنی که با کدوم روش راحت تر می تونی استفاده کنی و برنامه ات روتین تر میشه
Hsimple11
پنج شنبه 16 خرداد 1387, 08:44 صبح
متاسفانه من هنوز جواب نگرفتم. اگه ممکنه استاید کاملتر راهنمایی بفرمایند...
ممنونم...
daffy_duck376
پنج شنبه 16 خرداد 1387, 19:54 عصر
شما نبايد بگي كه بهتره فيلدهام زياد باشه يا جدول ها ، شما بايد جدوال خودتونو بهينه سازي كنيد تا با اضافه كردن ركوردهاي بيمورد حجم بانك اطلاعاتي خودتونو افزاريش نديدو سرعتتون پايين نياد بيشتر نمي تونم توضيح بدم چون تو دانشگاه يه ترم كامل درس پايگاه داده با200 صفحه كتاب استادا سعي كردن همين رو به ما ياد بدن!
merced
پنج شنبه 16 خرداد 1387, 20:20 عصر
شما نبايد بگي كه بهتره فيلدهام زياد باشه يا جدول ها ، شما بايد جدوال خودتونو بهينه سازي كنيد تا با اضافه كردن ركوردهاي بيمورد حجم بانك اطلاعاتي خودتونو افزاريش نديدو سرعتتون پايين نياد بيشتر نمي تونم توضيح بدم چون تو دانشگاه يه ترم كامل درس پايگاه داده با200 صفحه كتاب استادا سعي كردن همين رو به ما ياد بدن!
کاملاً درسته .. تو بحث طراحی پایگاه داده نرمال سازی رو داریم که برای بهینه تر شدن DB ساختار رو نرمال می کنیم.
صد درصد نیاز به تکه تکه کردن هست ولینه تا اون حد.
مثلاً نیازی نیست که برای فیلد جنسیت که دو مقدار میتونه داشته باشه جدول در نظر بگیری!!!!
یه مثال واضح تر . مثلاً تو یه برنامه مدریریت پروژه تمام پروژه ها یا امانی یا پیمانی و یا امانی پیمانی هستند . از فیلد منطقی نمیشه استفاده کرد. ذخیره رشته هم مناسب نیست. باید اینا رو بذاری تو یه جدول و کلیدهاش رو تو جدول اصلی ذخیره کنی. ولی باز هم این کار رو نمی کنی. چون مقادیر ثابت هستند یه با استفاده از توابع و متغییر های قابل تعریف تو SQL Server این کار رو میکنی تا جدول اضافه ای هم نداشته باشی. یا حداقل تو برنامه (َAPP) به اون مقدار بدی
Golzar7
دوشنبه 27 خرداد 1387, 20:22 عصر
سلام
در مورد سوال اولت بايد در رواديد ONClose مقدار Action را برابر با caFree قرار بدي به همين راهتي.
بانظر دوستان در مورد Normalize جداول كاملا موافقم.
يه پيشنهاد راجع به سوال دومت دارم :
اگه از SQL-SERVER استفاده ميكني ميتوني براي ارتباط با SQL-SERVER از ابزار SDAC استفاده كني ابزار بسيار قوي و گراني ميباشد.
Hsimple11
دوشنبه 27 خرداد 1387, 23:23 عصر
با سلام و تشکر از همه دوستان گرامی
در مورد سوال اولم مشکلم این بود که نمیخواستم فرمهام بسته شوند ولی راه حلی پیدا کردم . ممنون.
در مورد سوال دوم میخواستم کلا بیشتر بدونم. و از راهنمایی های همه ممنونم...
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.