PDA

View Full Version : نحوه طراحی جدول ایتم برای یک فروشگاه آنلاین



spranza804
چهارشنبه 11 اسفند 1389, 15:29 عصر
سلام بر اساتید،
من در حال طراحی دیتابیس یک سایت فروشگاه آنلاین هستم. به نظرتون جدولی که توش قراره محصولات فروشگاه قرار داده بشه، چه فیلد هایی باید داشته باشه؟ مشکل اینجاست که تنوع محصول خیلی زیاده و هر کدام هم اطلاعات تخصصی مربوط به خودش رو داره. مثلا کتاب شماره ISBN و یا قطع کتاب و تلویزیون سایز و مصرف برق و رنگ و غیره.

چه باید کرد؟

aminghaderi
پنج شنبه 12 اسفند 1389, 00:26 صبح
چه باید کرد؟
برای هر محصول یه تیبل مجزا.
در تیبل هر محصول کل اطلاعات مشترک باید به صورت فیلد قرار بگیره (برای تلوزیون :شرکت سازنده ، سایز ، رنگ ، وضعیت موجود در انبار ، نوع تلوزیون{lcd -led ,..} )
و کلیات اطلاعات اضافه باید در داخل فیلدی به عنوان "اطلاعات تکمیلی" قرار بگیره (دارای یک کنترل اضافه ،داری 8 پرت USB و...)

هر چه تعداد فیلد ها اصلی بیشتر باشد ، گزارش گیری بهتر و دقیق تر و حرفه ای تر خواهد بود.
به شرط اینکه فقط اطلاعات مشترک رو فیلد کنید.
مثلا تلوزیونی قابلت دریافت بلوتوس از موبایل و بخش آنی اون رو داره ، خوب نباید برای این مورد فیلدی در نظر گرفت چون فقط یکی دو مدل اون هم شاید همچین امکانی رو داشته باشند و افزودن فیلد برای این مورد باعث می شه تعداد زیادی از فیلد خالی در جدول محصول داشته باشید که مهندسی دیتابیس رو زیر سوال می بره.

فقط اطلاعاتی که مشترک هستند باید فیلد شوند (رنگ ، سایز ، نوع و...)


اگر سوالی بود یا مبهم بود همینجا بپرسین تا دوستان راهنمایی کنند ، چون من فقط همین امشب به اینترنت دسترسی دارم.
دعا کنید بعد دوره اموزشی خدمت ، بقیه خدمت رو شهر خودم ، مشهد بیفتم.:خجالت:

موفق و موید باشید.

spranza804
پنج شنبه 12 اسفند 1389, 00:42 صبح
ممنونم همشهری،
12 ساعت به این قضیه فکر کردم.D: ِ اول راه حل شما به ذهنم رسید. اما باز دیدم نمی تونم پیشبینی روی انواع کالا ها داشته باشم تا بتونم براشون تیبل جدا در نظر بگیرم.
راه حل دیگری که یکی از دوستانم مطرح کرد به نظرم در اینجا خیلی بدرد می خورد.
راه حل:
یک تیبل برای ایتم ها شامل: ID (پرایمری کی)، نام کالا قیمت و تعداد
یک تیبل به نام اتریبیوت شامل: ID(پرایمری کی)، و یک فیلد متنی برای نگه داری عنوان مشخصه(مثلا سایز تلویزیون یا شماره ISBN کتاب)
یک تیبل دیگر که ارتباط بین 2 تیبل بالا را بر قرار می کند (پرایمری کی هر دو را در خود دارد) و یک فیلد متنی دیگر شامل مقدار ان خاصیت دارد. (در اینجا 20 اینچ یا 12345445)

به این ترتیب تعداد و انواع مشخصات هر ایتم را می توان به طور داینامیک ذخیره کرد.

ممنونم و امیدوارم حتما بعد از اموزشی در مشهد باشید.

aminghaderi
شنبه 28 اسفند 1389, 08:53 صبح
خدای من واقعا جای تاسفه این همه متخصص توی این تالار هست و بعد رفتن من کسی ادامه راهنمایی رو به عهده نگرفته.:متفکر:
فقط می تونم بگم اگر هنوز مشکل شما حل نشده بهترین راه اینه که اگر دانشجو هستید به استاد درس پایگاه داده مراجعه کنید و اگر فارق تحصیل هستید و در بازار کار هستید یه طراح دیتابیس پیدا کنید تا با کمک اون طراحی رو ادامه بدید و اگر هم کسی رو نمی شناسید برید بخش SQLSERVER و از دوستان متخصص اون بخش بخواین کمکتون کنند ، متاسفانه اینجا خیلی ها به همه فکر هستند الی کمک کردن به کسایی که کارشون گیر هست.
و اقلب شاهد این هستینم که توی یه تاپیک ساده که یه دانشجوی ترم اول نرم افزار می تونه راهنمایی کننه 20 نفر می یان و هی پست می دن و همه هم یه چیزی رو می گن و همه هم اعتقاد دارند خودشون درست می گن ...:گیج:
نمی دونند که :
1- مشکل خیلی وقته حل شده.
2- مشکل اصلا مشکل خاصی نبوده
3- دیتابیس سایت رو الکی پر می کنند و برای مالک و تیم پشتیبانی و دیتاسنتر و تیم مدیریتی و...از همه مهمتر خودشون مشکل درست می کنند ، خوب مراعات نمی کنیم که حالا سایت خیلی وقت ها دیتابیسش قاط می زنه و نمی شه یه سرچ کرد درست حسابی کرد.

دوستان انتقادی ، حرفی ، حدیثی داشتین ، پیام خصوصی چون من فعلا سربازم و تا 4 عید هم بیشتر نیستم و معلوم نیست مرخصی بعدی کی باشه.

spranza804
شنبه 28 اسفند 1389, 15:23 عصر
امین جان،
ممنون، مشکلم حل شد و راه حل رو هم همون بالا نوشتم. بعدا هم کمی وقت کردم و دیتابیس های فروشگاه های آنلاینی مثل OsCommerce رو بررسی کردم. اونجا هم از همین روش استفاده شده.

alonemm
شنبه 28 اسفند 1389, 18:42 عصر
سلام:
در كل بسته به هر كالا ميتونيد پرفايلي داشته باشيد كه شمال يك سري خصوصيات باشه يا نه. ( در خيلي از CMS هاي فروشگاه آنلاين از اين روش استفاده ميشه)