PDA

View Full Version : کمک در ساخت view



hossein_va
یک شنبه 19 بهمن 1393, 09:47 صبح
سلام.
من دو تا جدول دارم یکی برای محصولات و دیگری جدولی برای تصاویر هر محصول.چطوری میتونم یه ویو بسازم که اطلاعات محصول به اضافه دو تا عکس از محصول را داشته باشه.فیلدهای ویو اینجوری بشه :
view feild : product_id,product_name,pic_id,pic_name1,pic_name2

جدول ها:

product : product_id , pic_id

picture : pic_id , pic_name

SabaSabouhi
یک شنبه 19 بهمن 1393, 13:47 عصر
سلام
شما باید بجای pic_id دو تا ستون تو جدول محصولات نگهداری کنی. مثلاً pic1_id و pic2_id.

صبا صبوحی

hossein_va
یک شنبه 19 بهمن 1393, 14:08 عصر
اینو که میدونستم.فکر کن هر محصول 10 تا عکس داره که تو جدول تصاویر هست.من میخوام تو ویو فقط دوتا عکسش را داشته باشم

sajadsobh
یک شنبه 19 بهمن 1393, 15:23 عصر
جدول رو درست تعریف نکردید. چون برای هر کالا چندتا عکس می تونه موجود باشه باید productId رو توی جدول picture بیارید شما برعکس انجام دادید.
اگه دو تا عکس مشخص از اون کالا نباشه می تونی از دستور SELECT TOP(2) استفاده کنید. میاد و فقط دو تا عکسی که مربوط به کالای مربوطه هست رو نمایش میده.

SabaSabouhi
یک شنبه 19 بهمن 1393, 16:18 عصر
اینو که میدونستم.فکر کن هر محصول 10 تا عکس داره که تو جدول تصاویر هست.من میخوام تو ویو فقط دوتا عکسش را داشته باشم

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

با فرض بر این که کلید‌های جدول‌هات رو درست کنی، برای این منظور باید تو جدول تصاویر یه ستون برای اندیس نمایش اضافه کنی
چون با روشی که دوستمون گفتن نمی‌تونی view مورد نظرت رو بسازی. مگه این که بجای view از udf استفاده کنی.

صبا صبوحی

hossein_va
یک شنبه 19 بهمن 1393, 19:27 عصر
با فرض بر این که کلید‌های جدول‌هات رو درست کنی، برای این منظور باید تو جدول تصاویر یه ستون برای اندیس نمایش اضافه کنی


یه کم بیشتر توضیح میدی؟مرسی

SabaSabouhi
دوشنبه 20 بهمن 1393, 09:53 صبح
سلام
یه ستون تو جدول تصاویر درست می‌کنی که اگه مقدارش 1 بود به معنی رزرو بودن برای نمایش به عنوان تصویر 1
و اگه مقدارش 2 بود رزرو هست برای نمایش به عنوان ستون 2. پر کردن این ستون رو هم می‌تونی خودکار انجام
بدی یا به صورت دستی.
البته این روش خوبی نیست، اما اگه اصرار داری که از view استفاده کنی باید همین‌کار رو بکنی.

صبا صبوحی