PDA

View Full Version : سوال: کمک در مورد بانکهای اطلاعاتی



nima20-20
شنبه 11 مرداد 1393, 18:34 عصر
من قبلا سوالی در مورد بانک اطلاعاتی پرسیده بودم که به جواب نرسید
حالا دوباره میپرسم با توضیحات بیشتر
من یک دیتابیس با دو جدول با نام استاد و دانشجو دارم. در جدول استاد نام درسو تعداد ظرفیت وجود داره و دانشجو باید استادی را که دوست داره انتخاب کنه و در جدول دانشجو با نام اون ثبت بشه .اولا تو این قسمت مشکل دارم و نمیدونم چطوری باید بین اینها رابطه برقرار کنم تا انام بشه. دوما هم میخام که وقتی که دانشجویی استادی را انتخاب کرد یک واحد از ظرفیت کل کم بشه و تو قسمت ظرفیت جدول استاد نشون بده
ممنون میشم راهنمایی کنید یا مثال بزنید

من کلا در زمینه برنامه نویسی بانکهای اطلاعاتی به روش sql یا command مشکل دارم و نحوه ارتباط دهی بین بانکها را متوجه نشدم

ممنون میشم یک منبع خوب باری این نوع برنامه نویسی که فکر کنم از لحاظ سرعت از همه روشها سریعتر هست رمعرفی کنید

با تشکر

mehdiba3
یک شنبه 12 مرداد 1393, 12:07 عصر
سلام. دوست عزیز پیشنهاد من به شما این هستش که مطالعخ بیشتری به صورت تئوری از بانک اطلاعاتی داشته باشید. کتاب آقای روحانی "مفاهیم بنیادین پایگاه داده " رو مطالعه کنین(کتاب الکترونیکیش به رایگان در اینترنت هست)
شما روشت اشتباهه و توضیح من یا هرکسی دیگه به شما کمکی نمیکنه چون شما هنوز مفهوم بانک اطلاعاتی رو درست متوجه نشدی.
توضیح من به شما :
وقتی جدولی داری مثل استاد و جدول دیگر مثل دانشجو : میتونه بهترین حالت اینطور باشه که هر دانشجو میتونه با چندین تا استاد کلاس بگیره باری درس های مختلف و هر استاد هم میتونه چندین دانشجو داشته باشه .
این یعنی یک رابطه چند به چند داری . وقتی دیدی تو یک رابطه چند به چند وجود داره باید یک جدول کمکی ختما قرار بدی. اون جدول کمکی به شما نشون میده که چطور بتونی تفکیک کنی که هر دانشجو با کدوم استاد گرفته و هر استداد با کدام دانشجو.

اگه بخوای پیشرفته ترش کنی اینطور که می گم عمل کن:

دانشجو(کد دانشجو- نام- فامیل)
استاد(کد استاد-نام- فامیل)
درس(کد درس- نام درس)
ثبت نام( کد ثبت نام- کد دانشجو- کد استاد-کد درس)

جدول ثبت نام بسیار مهمه چون باعث ارتباط بقیه جداول شده.

برای سوال دیگه که گفتی :"وقتی که دانشجویی استادی را انتخاب کرد یک واحد از ظرفیت کل کم بشه و تو قسمت ظرفیت جدول استاد نشون بده"

برای این کار شما باید یک جدول دیگه درست کنی و این جدول شامل
دوره (کد دوره- نام دوره- کد استاد- ظرفیت)
بعد هر بار که یک دانشجو تو جدول ثبت نام ، که بالا برات نوشتم ثبت نام کرد باید از ظرفیت یکی کم کنی. یعنی Capacity=Capacity-1

بنظرم اگه توضیحاتی که بهت گفتم برات قابل فهم نیست اون کتابی که گفتم رو از اول تا آخر مطالعه کن بعد شروع کن به کار عملی
موفق باشد

nima20-20
یک شنبه 12 مرداد 1393, 14:16 عصر
ممنون از راهنمایی شما

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

ممنون میشم در این مورد کمکم کنید واینجوری که من متوجه شدم سه تا جدول باشه و دوتای اولی مشخصات و سومی مشخصات دانشحو و استادی باشه که هر نفر انتخاب کرده

همچنین اگر بخام طوری تغییر بدم که هر دانشجو با یوزر خودش وارد بشه وفقط اطلاعات خودش را ببینه چیکار باید انجام بدم

ممنون

nima20-20
یک شنبه 12 مرداد 1393, 20:45 عصر
من دوتا سوال داشتم

اولا اینکه طریقه استفاده از stored procedure ها در ado.net در خود #C و sql express که در viaul studio نصب میشه چطوریه و چطور میشه ازش استفاده کرد.
دوم هم اینکه یک مرجع خوب و کامل برای برنامه نویسی ADO.NET میخاستم اگر فارسی باشه که چه بهتر

ممنون

nima20-20
دوشنبه 13 مرداد 1393, 21:01 عصر
من یه مشکلی در دیتابیس دارم که راهنمایی میخام

ببنید من سه جدول با نامهای admin , user1,user2 دارم که در داخل admin یوزر و پسورد هر شخص نگه داری میشه و جدولهای user1,user2 مربوط به کابران عادی و کاربران ویژه است. حالا میخام در جدول admin فیلدی اضافه کنم که توسط اون تشخیص بدم کاربر عادی است یا ویژه . اولا اینکه این فیلد باید چه خصوصیتی داشته باشه و همچنین ارتباطلات بین اونها که مهمترین مساله هست را چطوری باید انجام بدم

همچنین میخاستم ببینم که سرعت و امنیت کدوم یک از دستورات ado.net خوب هستش
stored procedure یا نوشتن دستورات داخل خود برنامه در دستور command

ممنون میشم راهنمایی کنید

mehdiba3
سه شنبه 14 مرداد 1393, 22:17 عصر
ممنون از راهنمایی شما

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

ممنون میشم در این مورد کمکم کنید واینجوری که من متوجه شدم سه تا جدول باشه و دوتای اولی مشخصات و سومی مشخصات دانشحو و استادی باشه که هر نفر انتخاب کرده

همچنین اگر بخام طوری تغییر بدم که هر دانشجو با یوزر خودش وارد بشه وفقط اطلاعات خودش را ببینه چیکار باید انجام بدم

ممنون

من تا حالا از این روش که شما میخواین استفاده نکردم که N کاربر بتونه با نام کاربری خودش وارد بشه و پروفایل خودش رو ببینه. البته خیلی هم نباید سخت باشه. فقط باید روش فکر کرد.
چیزی که به ذهن من میرسه اینه:

شما یک قرم login داری که دانشجو رمز عبورش رو وارد می کنه. توی DBMS یک جدول بنام login ایجاد کن و توش 3 فیلد قرار بده:
ID
Uername
Password

ID که خودش مقدار میگیره. کاری بهش نداریم. ولی username password رو باید Admin ایجاد کنه
حالا با توجه به User pass شما سطوح دسترسی مشخص می کنی. مثلا
اکه USER1=A and PAssword=123 بود :
باید DBMS چک کنه که این کاربر وجود داره یا نه و بر اساس اون فرم مخصوص دانشجو رو نشون بده و مشخصاتی که تو فرم نشون داده میشه برای همه دانشجوها ثابت هست ولی نکته مهم اینه که مقدار اون داده ها با هم فرق می کنه و بر اساس مشخصات داشنجو select میشه

veniz2008
سه شنبه 14 مرداد 1393, 23:58 عصر
من دوتا سوال داشتم

اولا اینکه طریقه استفاده از stored procedure ها در ado.net در خود #C و sql express که در viaul studio نصب میشه چطوریه و چطور میشه ازش استفاده کرد.
دوم هم اینکه یک مرجع خوب و کامل برای برنامه نویسی ADO.NET میخاستم اگر فارسی باشه که چه بهتر

ممنون


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

من کلا در زمینه برنامه نویسی بانکهای اطلاعاتی به روش sql یا command مشکل دارم و نحوه ارتباط دهی بین بانکها را متوجه نشدم

ممنون میشم یک منبع خوب باری این نوع برنامه نویسی که فکر کنم از لحاظ سرعت از همه روشها سریعتر هست رمعرفی کنید

با تشکر
سلام.
در لینک زیر جواب بسیاری از سوالاتتون رو خواهید گرفت. فقط در مورد sql توصیه ای که بهتون می تونم داشته باشم اینه که در کنار مطالعه کتاب که باید محور باشه، از یک دوست که بهش دسترسی دارید کمک بگیرید یا کلاس خصوصی خوب برید (نه هر کلاسی) و سعی کنید با مفاهیم بانک های اطلاعاتی خوب آشنا بشید.
اعتقادم اینه که کتاب به تنهایی کافی نیست چون تجربه در بحث دیتابیس بسیار مهم هستش. موارد و نکات بسیاری وجود داره که توی کتاب ها نمی تونید براحتی اونها رو پیدا کنید یا اگر وجود داشته باشند در حالت تئوری پیچیده یا گنگ به نظر خواهند رسید ولی وقتی بصورت عملی اون موارد رو کار می کنید تازه متوجه خواهید شد که اون کتاب داشته چی می گفته.
http://barnamenevis.org/showthread.p...=1#post1888187 (http://barnamenevis.org/showthread.php?415427-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%88%DB%8C%D8%AF%D8%A6%D9%88%DB%8C%DB%8C-%DB%8C%DA%A9-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE-%D8%A7%D8%B2-%D8%A7%D8%A8%D8%AA%D8%AF%D8%A7-%D8%AA%D8%A7-%D8%A7%D9%86%D8%AA%D9%87%D8%A7&p=1888187&viewfull=1#post1888187)


همچنین میخاستم ببینم که سرعت و امنیت کدوم یک از دستورات ado.net خوب هستش
stored procedure یا نوشتن دستورات داخل خود برنامه در دستور command

این لینک رو مشاهده کنید :
http://barnamenevis.org/showthread.php?415859-%D8%A8%D8%B1%D8%B1%D8%B3%DB%8C-%D8%B3%D9%88%D8%A7%D9%84%D8%A7%D8%AA-%D9%88-%D9%86%D8%B8%D8%B1%D8%A7%D8%AA-quot-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE-%D8%A7%D8%B2-%D8%A7%D8%A8%D8%AA%D8%AF%D8%A7-%D8%AA%D8%A7-%D8%A7%D9%86%D8%AA%D9%87%D8%A7-quot&p=1868473&viewfull=1#post1868473
موفق باشید.

nima20-20
پنج شنبه 16 مرداد 1393, 10:31 صبح
من یه سوال داشتم

میخاستم ببینمن که طریقه کار با rollback در sql چطوری است اگر اموزشی یا پروژه ای در این زمینه دارید قرار بدید و به چه دردی میخوره و کجاها باید استفاده کرد

ممنون

nima20-20
جمعه 17 مرداد 1393, 10:37 صبح
میخاستم ببینمن که طریقه کار با rollback در sql چطوری است اگر اموزشی یا پروژه ای در این زمینه دارید قرار بدید و به چه دردی میخوره و کجاها باید استفاده کرد

ممنون