تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 9 از 9

نام تاپيک: مشکل در طراحی دیتابیس جعبه لایتنر

  1. #1
    در آغاز فعالیت
    تاريخ عضويت
    Oct 2009
    محل سكونت
    tehran
    پست ها
    9

    پيش فرض مشکل در طراحی دیتابیس جعبه لایتنر

    سلام.
    دوستان ،راجع به پروژه جعبه لایتنر تحت وب دچار مشکل شدم. الان تو مرحله طراحی دیتابیس و جداول هستم.راستش نمی دونم چه جدولهایی بجز اوناییکه ایجاد کردم نیازن.البته درخصوص اطلاعات مربوط به یک سایت رو می گم.انگار یکسری جداول بین همه سایتها مشترکن.مثل aspnet_roles,aspnet_membership ,....اما نمی دونم اینا هرکدوم برای چ هستن و اصلا برای این پروژه لازمن یا خیر!
    جداولی که طراحی کردم اینا هستن:
    TCard :جدول کارتهای جی5
    TLitnerBox : جدول جعبه های موضوع بندی شده جی 5
    TCradStatus : وضعیت کارت در تستها:خوانده شده یا خوانده نشده یا باید تکرار شود و ...
    TLesson : بخشهای متعدد و مجزای یک درس.مثلا بخش یک درس زبان
    TMember :جدول اعضای سایت که شامل صفاتی مثل نام و ایمیل و نام کاربری و ... هست
    TCity : جدول شهر یوزرها
    TAdmin : جدول ادمین سایت
    TAccess : جدول سطح دسترسی کاربران
    و البته با رسم دیاگرامهای لازم بین این جدولها.
    آیا جدول دیگه ای لازمه؟
    یک سؤال دیگم این هست که یکی از جدولهام دارای کلید اصلی هست.اما می خوام یکی از فیلدها مقدار تکراری نگیره.مثلا فیلد ایمیل.که کاربر با ایمیل تکراری ثبت نام نکنه.فکرکنم باید فیلد رو یونیک بشه.اما چه با کدنویسی چه ازطریق Index اینکار رو انجام دادم عملی نشد.
    و یه سؤال دیگه که احتمالا مبتدیه اینکه توی پروژه های تحت ویندوز نیازی به نوشتن کوئری توی دیتابیس نبود و تمام بار کدنویسی به سی شارپ دات نت منتقل میشد.پروژه های تحت وب هم اینطور هستن؟

    با تشکر.

  2. #2
    پروفشنال
    تاريخ عضويت
    Nov 2007
    پست ها
    546

    پيش فرض

    بسم الله الرحمن الرحیم
    با سلام
    TAdmin : جدول ادمین سایت
    فکر نمیکنم این مورد لازم باشه؛ چون جدول Member رو طراحی کردید از طرفی جدول Access رو هم برای نقش ها و سطح دسترسی معین کردید. ادمین کاربری ست با سطح دسترسی ادمین.
    TLitnerBox : جدول جعبه های موضوع بندی شده جی 5
    TLesson : بخشهای متعدد و مجزای یک درس.مثلا بخش یک درس زبان
    راجع به درس و طبقه بندی کردن موضوع ها باید صورت مسئله رو دقیق تر بفرمائید تا بتوان بهتر نظر داد.
    TCradStatus : وضعیت کارت در تستها:خوانده شده یا خوانده نشده یا باید تکرار شود و ...
    به نظرم تو این جدول بهتره مسائل دیگه مثل شماره ردیف, و شماره ستون مورد نظر تو اون ردیف لحاظ شود و مواردی مثل وضعیت کارت در تستها:خوانده شده یا خوانده نشده یا باید تکرار شود و ... در جدول جزئیات کارت مناسب تر باشد.
    جدول جزئیات کارت: که نشان میدهد هر کارت در مورد هر کاربر کجای جعبه لایتنر قرار دارد. ID_CartDetail کلید اصلی است و ID_User, ID_Card کلیدهای خارجی هستند که به جدول های کاربر و کارت مرتبط هستند. و فیلد TCradStatus_ID که نشان دهنده موقعیت کارت در جعبه است.
    در کل اگه بخواهید راجع به جداولتون ریزتر بشیم باید فرضیات و سناریوهای سیستمی که باهاش کار میکنید رو جزئی تر بفرمائید.
    موفق باشید.

  3. #3
    پروفشنال anvar.net's Avatar
    تاريخ عضويت
    Apr 2007
    محل سكونت
    IRAN
    پست ها
    648

    پيش فرض

    در صورتی که بخواهید از امکانات membership بومی asp.net استفاده کنید که قطعا بهتره نیازی به ایجاد مجدد جداولی به نام های TAdmin و TAccess وجود ندارد. البته ذکر این نکته لازم است که بصورت پیش فرض برای عملیات های عضویت , ورود و خروج و .... یک پایگاه داده مستقل توسط asp.net ساخته می شود و احتمالا شما یک پایگاه داده دیگر برای جداول اختصاصی خود طراحی کرده اید : با این حساب شما 2 پایگاه داده دارید که قرار دادن اونها بر روی سرور هاست مشکل و هزینه بر است. شما می تونید با استفاده از ابزار aspnet_regsql که در مسیر C:\Windows\Microsoft.NET\Framework\v4.0.30319 قرار گرفته است اطلاعات و تمامی اشیاء مربوط به membership را به جدول خودتان منتقل کنید و connectionstring ها را هم تغییر بدهید. در مورد تعداد جدول ها , هیچ کسی بهتر از خودتان نمیداند که نیاز به چه چیزی دارید : اگر با جداول موجود همه کارها بدرستی صورت می گیرد پس عملا نیازی به جدول جدید نخواهید داشت. برای اینکه فیلد ایمیل شما مقدار تکراری نگیرد نیازی به یکتاسازی مقادیر آن ندارید, یعنی کاری که شما با ایندکس ها می کنید برای فیلدهای استرینگ منطقی نیست و معنایی تدارد. بهترین راه, چک کردن وجود ایمیل های کاربران قبل از ثبت در پایگاه داده است که در زمان طراحی صفحات ثبت نام صورت می گیرد . می تونید از روال های ذخیره شده نیز برای چک کردن وجود یا عدم وجود ایمیل استفاده کنید. نوشتن کوئری ها بصورت هارد کدینگ در میان کد برنامه کار عاقلانه ای نیست . لذا از اون پرهیز کنید (در دسکتاپ و وب) به جای آن از روال های ذخیره سازی شده استفاده کنید.

  4. #4
    در آغاز فعالیت
    تاريخ عضويت
    Oct 2009
    محل سكونت
    tehran
    پست ها
    9

    پيش فرض

    1. سطح دسترسی ها به سه بخش مدیر سیستم ، کاربر و مهمان تقسیم می شود. کاربر مهمان صرفاً می تواند از یک جعبۀآزمایشی استفاده کند و نتایج آن نیز برایش ذخیره خواهد شد که این امر به این دلیل است که کاربران قبل از عضویت در سایت بتوانند با نحوۀ عملکرد سایت آشنا شوند. توضیح امکاناتی که کاربران ومدیر سیستم نیاز دارند در ذیل مطرح خواهد شد.
    2.کاربران در این نسخه می توانند جعبه های لایتنر را ایجاد یا حذف کنند و در هرجعبه ، پرسش و پاسخ های موردنظرشان را اضافه ، حذف وویرایش کنند. این عملیات در بخش مدیریت جعبه های کاربری خواهد بود. بخش بعدی و اصلی ، بخش پاسخ به سوالات است که ابتدا کاربر یکی از جعبه های خود را انتخاب می کنند ، سپس وارد صفحۀ پاسخ به سوالات میشود ، تک تک سوالاتی که نوبت پرسیده شدن آنها فرا رسیده از کاربر پرسیده می شود سپس با فشردن دکمۀ مشاهدۀ پاسخ ، پاسخ سوال به کاربر نشانداده می شود و کاربر اعلام میکند که آیا پاسخ آن را می دانسته است یا خیر. ضمناکاربران بخش مدیریت پروفایل را نیز دارا هستند که شامل تغییررمز عبور و اطلاعات شخصی است.
    مدیر سایت نیز به مدیریت متن صفحات سایت و مشاهده لیست کاربران می پردازد.
    این تمام سناریو هست.ممنون جناب shotok.

    anvar.net عزیز، من قسمتی از حرفهای شما رو متوجه نشدم.میشه یکم ساده تر بگید لطفا؟
    من هنوز سایت رو طراحی نکردم و فعلا فقط دارم دیتابیس رو طراحی می کنم و تنها یک دیتابیس ایجاد کردم.جداولی مثل membership و paths و... رو توسط نرم افزارasp.net باید ایجاد کنم؟میشه مقاله یا کتابی درزمینه استفاده از روالهای ذخیره سازی شده بهم معرفی کنید؟نهایت تا شنبه باید طرح رو تحویل بدم.واقعا ممنونم.
    Last edited by galaxy_sh; 02-05-2013 at 20:08.

  5. #5
    پروفشنال anvar.net's Avatar
    تاريخ عضويت
    Apr 2007
    محل سكونت
    IRAN
    پست ها
    648

    پيش فرض

    هر کتابی که در زمینه asp.net باشد چند فصل در زمینه بانک های اطلاعاتی دارد. من اخیرا کتاب فارسی خاصی را در این زمینه نخوندم که معرفی کنم.
    یه کتاب الکترونیک به زبان فارسی در لینک زیر برای فروش انلاین هست اما نمی دونم خوب نوشته شده یا نه؟

    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    اگر شما جداول مورد نظر خودتون رو ایجاد کرده باشید پس یه دیتابیس دارید که خودتان نامگذاری کرده اید (دیتابیس 1). حالا اگر بخواهید از امکانات membership بومی asp.net استفاده کنید, بصورت خودکار یه دیتابیس جدید ساخته می شود و تمام جداول و روال های ذخیره شده و سایر اشیاء دیگه در داخل دیتابیس جدید ساخته می شوند(دیتابیس 2). حالا شما 2 تا دیتابیس مستقل از هم دارید (حرف های بالا مربوط به این قسمت بود)
    بهتره که تمام مراحل رو از یه کتاب دنبال کنید تا در کوچکترین مسائل با مشکل مواجه نشوید, اینجوری سرعت پیشرفت کار شما هم بیشتر میشه.
    برای کنترل ایمیل های تکراری : می تونی قبل از اینکه کاربر ثبت بشه, ایمیل ورودی کاربر را گرفته و یه سرچ در بانک بکنی, اگر نتیجه ای برگشت داده شد یعنی اینکه ایمیل قبلا در دیتابیس هست و نباید دوباره ثبت بشه, اگر نتیجه ای برگشت نداد یعنی ایمیل جدیده و کاربر می تواند ثبت شود(با روال ذخیره شده می تونی کل عملیات سرچ و ثبت رو در یک پست بک انجام بدی ). بدون درک صحیح روال های ذخیره شده و یا T-sql بحث کردن خیلی سخته.

  6. #6
    در آغاز فعالیت
    تاريخ عضويت
    Oct 2009
    محل سكونت
    tehran
    پست ها
    9

    پيش فرض

    من دستورات T-Sql رو می دونم.الانم درمورد روالهای ذخیره شده مطالعه کردم.اما مکل اینجاست که نمی دونم برای شروع چکار کنم.برای اولین باره که قراره اینکار رو انجام بدمو حسابی گیج شدم.

  7. #7
    پروفشنال
    تاريخ عضويت
    Nov 2007
    پست ها
    546

    پيش فرض

    بسم الله الرحمن الرحیم
    سطح دسترسی ها به سه بخش مدیر سیستم ، کاربر و مهمان تقسیم می شود. کاربر مهمان صرفاً می تواند از یک جعبۀآزمایشی استفاده کند و نتایج آن نیز برایش ذخیره خواهد شد که این امر به این دلیل است که کاربران قبل از عضویت در سایت بتوانند با نحوۀ عملکرد سایت آشنا شوند. توضیح امکاناتی که کاربران ومدیر سیستم نیاز دارند در ذیل مطرح خواهد شد.
    2.کاربران در این نسخه می توانند جعبه های لایتنر را ایجاد یا حذف کنند و در هرجعبه ، پرسش و پاسخ های موردنظرشان را اضافه ، حذف وویرایش کنند. این عملیات در بخش مدیریت جعبه های کاربری خواهد بود. بخش بعدی و اصلی ، بخش پاسخ به سوالات است که ابتدا کاربر یکی از جعبه های خود را انتخاب می کنند ، سپس وارد صفحۀ پاسخ به سوالات میشود ، تک تک سوالاتی که نوبت پرسیده شدن آنها فرا رسیده از کاربر پرسیده می شود سپس با فشردن دکمۀ مشاهدۀ پاسخ ، پاسخ سوال به کاربر نشانداده می شود و کاربر اعلام میکند که آیا پاسخ آن را می دانسته است یا خیر. ضمناکاربران بخش مدیریت پروفایل را نیز دارا هستند که شامل تغییررمز عبور و اطلاعات شخصی است.
    مدیر سایت نیز به مدیریت متن صفحات سایت و مشاهده لیست کاربران می پردازد.
    این تمام سناریو هست
    با سلام
    جعبه آزمایشی یا پرسش و پاسخ هایی که مطرح فرمودید؛ دسته بندی مشخصی دارند؟ و مربوط به درس مشخصی هستند؟
    می خوام راجع به درس و طبقه بندی کردن موضوع ها که قبلا مطرح کرده بودید؛ وضعیت روشن بشه.
    موفق باشید.

  8. #8
    در آغاز فعالیت
    تاريخ عضويت
    Oct 2009
    محل سكونت
    tehran
    پست ها
    9

    پيش فرض

    سلام.کاربر می تونه خودش جعبه لایتنر رو با هر موضوعی که می خواد ایجاد کنه.بخاطر همین هر جعبه لایتنر دارای نام خاصی هست.مثل تاریخ زبان....و هر درس شامل بخشهای متفاوتی.

    دوستان بخاطر اینکه کارم خیلی عجله ای هست اگر لطف کنید و منو تو مسنجراتون add کنید تا بشه بهتر از راهنماییتون کمک بگیرم ممنون میشم
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    sh_sa985 : skype

  9. #9
    پروفشنال
    تاريخ عضويت
    Nov 2007
    پست ها
    546

    پيش فرض

    بسم الله الرحمن الرحیم
    سلام.کاربر می تونه خودش جعبه لایتنر رو با هر موضوعی که می خواد ایجاد کنه.بخاطر همین هر جعبه لایتنر دارای نام خاصی هست.مثل تاریخ زبان....و هر درس شامل بخشهای متفاوتی.

    دوستان بخاطر اینکه کارم خیلی عجله ای هست اگر لطف کنید و منو تو مسنجراتون add کنید تا بشه بهتر از راهنماییتون کمک بگیرم ممنون میشم
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    sh_sa985 : skype
    با سلام
    فرمودید که برای هر کاربر چند جعبه لایتنر میتونه وجود داشته باشه. بنابراین برای این مورد هم بایستی جدولی در نظر گرفته شود که شامل
    فیلدهایی مثل نام و موضوع (اگر در هر جعبه لایتنری راجع به یک موضوع بحث میشود).
    در کل یک موضوعی رو خدمتتون عرض کنم و اون اینکه خودتون جزئیات کار رو به دقت بررسی کنید تا سعی کنید جدولی جا نمونه.
    موفق باشید.

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •