آخرین ارسال ها |
نوار پیام ها |
مدیریت پیام ها |
امکان افزودن پاسخ به این موضوع وجود ندارد امکان افزودن موضوع در این بخش وجود ندارد |
|
اطلاعات نویسنده |
سه شنبه ۲۱ خرداد ۱۳۹۲ ۱۰:۴۶ بعد از ظهر
|
|||||||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
قصد داشتم یه سری آموزش SQL Server 2008 بزارم ولی لازم دیدم قبل از آموزش اصول و مفاهیم پایگاه داده گفته شود. معتقدم همانطور که یک برنامه نویس اولین قدم خود را برای ورود به دنیای برنامه نویسی با آموزش طراحی الگوریتم آغاز می نماید، کسانی هم که میخواهند طراح پایگاه داده خوبی باشند و بخواهند در این نوع زبانها موفق باشند باید به صورت پایه ای یاد بگیرند و در ابتدا با اصول و مفاهیم پایگاه داده آشنا شوند. تمام تلاش خودم را میکنم تا مطالب اصول و مفاهیم پایگاه داده را به صورت مختصر و مفید بیان نماییم .امیدوارم شما عزیزان بتوانید استفاده نمایید. زکات علم نشر و گسترش آن می باشد. امام علی (ع)
می پسندم 9 0 9 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||||||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
یکشنبه ۲۶ خرداد ۱۳۹۲ ۰۷:۱۰ بعد از ظهر
[1]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
قبل از تعریف پایگاه داده ها لازم است تفاوت میان داده و اطلاع را درک کنیم.
داده ها: مقادیر خامی است که به تنهایی معنی و مفهوم خاصی ندارد. و نمی تواند هیچ تاثیر در تصمیم گیریهای سیستم داشته باشد. بعنوان مثال ، موارد ذیل سه داده در یک سیستم فروشگاه می باشند: شماره فاکتور=1001 تاریخ فاکتور=4/4/83 اطلاعات: نتیجه حاصل از پرداش داده ها را می توان اطلاعات نامید. اطلاعات ، مبنای تصمیم گیری در سازمانها هستند. روش های ذخیره سازی اطلاعات: ا- روش دستی: در این روش اطلاعات در پوشه های جداگانه ذخیره می شد. معایب روش دستی:
2- سیستم فایلینگ
در این نوع سیستم های ذخیره سازی، از اطلاعات مرتبط با یکدیگر در قالب فایل در کامپیوتر ذخیره می شد فایل ها هیچگونه ارتباطی با یکدیگر نداشته و هر کدام به صورت جداگانه تهیه و طراحی می شوند. معایب سیستم فایلینگ:
سیستم های پایگاه داده:
به علت مشکلاتی که سیستم فایل در ذخیره سازی اطلاعات داشتند، به تدریج سیستم های پایگاه داده ها (بانک اطلاعاتی ) به وجود آورند. در سیستم های پایگاه داده کلیه ی اطلاعات به صورت یکپارچه و متمرکز در یک نقطه ذخیره می شوند. در این گونه سیستم ها کاربر به صورت مستقیم با داده ها کار نمی کند و از واسطی به نام DBMS (Data Base Management System) استفاده می شود. کاربر فرامین خود را در قالب یک دستور سطح بالا به DBMS ارسال می کند DBMS دستور کاربر داده ها اعمال کرده و نتایج مجددا به کاربر ارسال می شود. اجزاء یک سیستم پایگاه داده ها: یک سیستم پایگاه داده شامل اجزاء ذیل است:
3- کاربران: کاربران سیستمهای پایگاه داده ها را می توان به پنج دسته ی اصلی تقسیم کرد:
4- پروسیجرها: پروسیجرها شامل دستوراتی هستند که برای اجرای قوانین حاکم برسیستم نوشته می شوند.به عنوان مثال، دریک سیستم فروشگاه به محض صدور فاکتور برای مشتری باید موجودی کالاها خریداری شده توسط مشتری به روز رسانده شود.برای انجام این کار معمولا از یک پروسیجراستفاده می شود.
5- داده ها: داده های یک سیستم پایگاه داده ها شامل داده های مورد نیاز کاربران نهایی و فرراداده ها می باشند.
مهمترین وظایف DBMS: تامین استقلال داده ای و ساختاری: DBMS به طور اتوماتیک یک دیکشنری داده برای پایگاه دادهها تهیه می کند و مشخصات کلیه ی داده ها (اعم از داده های مربوط به موجودیتها و روابط میان موجودیتها) را دراین دیکشنری ذخیره می کند . قبل از رجوع به هر قلم داده ای، DBMS به دیکشنری داده ها رجوع کرده و از مشخصات ساختاری آن آگاه می شود.مثلا اگر کاربر از DBMS بخواهد کلیه ی اطلاعات موجود در جدول در جدول student را استخراج کند، DBMS ابتدا به دیکشنری داده مراجعه کرده، از چند و چون ساختار این جدول مطلع می شود.چنانچه طراح پایگاه داده ها فیلد جدیدی با نام address و طول 50کاراکتر را در جدولstudent اضافه کند،این تغییر در دیکشنری داده ها منعکس می شود.در نتیجه در مراجعات بعدی به جدولstudent، از آنجا که DBMS فیلد address را نیز جزء فیلدهای جدول Student می بیند، می داند چگونه با جدول اصلی که اکنون شامل فیلد address نیز هست برخورد کند.به همین ترتیب اگر طراح فیلد nameاز جدول student را از 20کاراکتر به 30کاراکتر تغییر دهد،این تغییر در دیکشنری داده ها منعکس می شود.در نتیجهDBMS در مراجعات بعدی به جدول Studentو تنها با مشاهده ی دیکشنری داده متوجه می شود که برای فیلدname باید 30 کاراکتر در نظر بگیرد. به این ترتیب، نیازی به تغییر کد برنامه هایی که با جدول studentسرو کار دارند نمی باشد.در واقع،DBMS با ایجاد دیکشنری داده، غالبا باعث مصونیت کدهای برنامه نویسی از تغییرات انجام شده در ساختار های پایگاه داده ها می شود و با این کار خدمت بزرگی در حق برنامه نویسان می کند!!! مدیریت ذخیره سازی اطلاعات: DBMS ساختارهای پیچیده ی لازم برای ذخیره ی داده ها را خود ایجاد کرده و طراحان پایگاه داده ها را از وظیفه ی سنگین تعریف خصوصیات فیزیکی داده ها معاف می کند. اکثر DBMS-های کنونی نه تنها ذخیره سازی داده ها را خود مدیریت می کنند، بلکه ابزارهایی در اختیار کاربران خود قرار می دهند تا فرمهای لازم برای ورود داده ها را طراحی کرده، گزارشات مورد نیاز خود را تعریف کرده، قوانین اعتبارسنجی محیط عملیاتی مورد نظررا تعین کرده(مثلا در محیط دانشگاه، بازه ی قابل قبول برای نمره ی دانشجو عددی بین 0تا20است.طراح پایگاه داده ها به راحتی می تواند این قانون را به DBMSابلاغ کند.پس از تعریف این قانون چنانچه کاربری بخواهد نمره ای خارج از محدوده ی مجاز را وارد کند، DBMS از انجام عمل مورد نظر وی سر باز می زند)، نحوه ورود تصاویر و ویدئوها در پایگاه داده ها را مشخص کند و ... مدیریت امنیت: در سیستمهای پایگاه داده های کنونی امنیت از اهمیت ویژه ای برخوردار است.امنیت در پایگاه داده ها به این معناست که هرکاربر تنها در حوزه ی اختیارات و وظایف خود به داده ها دسترسی داشته باشد. امکان استفاده ی اشتراکی از اطلاعات : DBMSبا استفاده از الگوریتم های پیچیده این امکان را به وجود می آورد که چندین کاربر به صورت همزمان و مشترک ار داده های موجود در پایگاه داده ها استفاده کنند بدون آنکه در پایگاه داده ها ناسازگاری به وجود آید. تهیه خودکار نسخه ی پشتیبان: در سیستمهای پایگاه داده های قدیمی، اپراتور هر قسمت، مسئول تهیه ی نسخه ی پشتیبان بود ولی DBMS-های کنونی این وظیفه را خود بر عهده می گیرند. DBAمی تواند برنامه ی زمانی مورد نظر برای تهیه ی نسخه ی پشتیبان و محل ذخیره شدن آن را برای DBMSمشخص کند. DBMSوظیفه دارد طبق برنامه ی دیکته شده عمل تهیه ی پشتیبان را انجام دهد. مثلا ممکن است DBAاز DBMS بخواهد که ساعت14.00روزهای یکشنبه عمل تهیه ی نسخه ی پشتیبان را انجام دهد و نسخه ی پشتیبان را در مسیرF:\backupذخیره کند. در این صورت، DBMS در زمان مشخص شده و به صورت اتوماتیک عمل تهیه ی نسخه ی پشتیبان را انجام می دهد. تامین جامعیت داده ای: مفهوم جامعیت داده ای شامل دو مفهوم اعتبار داده ها و سازگاری داده ها می باشد.اعتبار داده ها به این معناست که هیچ مقدار نا معتبری در پایگاه داده ها وارد نشود،مثلا نمره ی 22 در سیستمی که بازه ی قابل قبول برای نمره در آن اعداد بین 0 تا20 است، یک داده ی نامعتبر محسوب می شود. سازگاری داده ها به این معناست که در صورت ذخیره ی یک داده در چندین محل، مقدار همه ی آنها یکسان باشد. ایجاد یک سیستم پرس و جوی خودکار: DBMS یک زبان پرس وجو در اختیار کاربران پایگاه داده ها قرار می دهد.زبان پرس و جو، زبانی بسیار ساده است که به کاربران اجازه می دهد دستوری را روی پایگاه داده ها صادر کنند بدون آنکه از چند و چون نحوه ی انجام آن مطلع باشند. DBMS، این دستورات را به کدهای پیچیده ی لازم ترجمه کرده، کدهای بدست آمده را روی پایگاه داده ها اجرا می کند. علاوه براین،DBMSابزارهایی در اختیار طراحان پایگاه داده ها و DBA قرار می دهد تا به راحتی پایگاه داده های مورد نظر خود را ایجاد، پیاده سازی و پشتیبانی کرده، بر عملکرد آن نظارت کنند. شکل زیر یک سیستم فایل را با سیستم پایگاه داده ها مقایسه می کند:
سیستم فایل
سیستم پایگاه داده ها
معماری سیستم های پایگاه داده ها
این نوع سیستم ها از یک معماری سه لایه برای ذخیره و بازیابی اطلاعات استفاده می کنند.
شکل زیر این معماری را نشان می دهد:
در هربرنامه ی کاربردی که با پایگاه داده ها سر و کار دارد از دو دسته زبان استفاده می شود:
زبان فرعی داده ای DSL: از دستورات زبان فرعی داده ای برای کار با داده ها استفاده می شود.این دستورات به سه دسته تقسیم می شوند:
زبان تعریف داده ها یا DDL: این نوع دستورات برای تعریف اشیاء موجود در پایگاه داده استفاده می شود مانند ساخت جداول، ساخت Index و........... زبان دستکاری داده ها یاDML:از این دستورات برای بازیابی ، درج، حذف و اصلاح اطلاعات جداول استفاده می شود. مانند دستوراتSelect،update ،Insert Delete. زبان دستکاری داده ها یاDCL: این دستورات جهت کنترل و مدیریت در سطح پایگاه ها کاربرد دارد. مثل تعیین سطح دسترسی برای هر کاربر. زبان میزبان یا HL: به علت اینکه زبانهای DSL تمامی نیازهای یک سیستم اطلاعاتی را مهیا نمی کند،نیاز به زبان میزبان یا HL می باشد در زبان میزبان یا HL معمولا می توان با دستورات شرطی و حلقه ها مدیریت بهتری بر روی اطلاعات انجام داد. می پسندم 3 0 3 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
پنجشنبه ۳۰ خرداد ۱۳۹۲ ۱۲:۰۵ قبل از ظهر
[2]
|
||||||||||||||||||||||||||||||||||||||||||||||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
مدلهای پایگاه داده:
از آنجا که مدلهای پایگاه داده های سلسله مراتبی و شبکه ای در سالهای اخیر محبوبیت خود را به علت پیچیدگیها و معایبی که این مدلها دارند کم شده است و در حال حاضر پایگاه داده های رابطه ای رایجترین پایگاه داده های مورد استفاده هستند در اینجا مفاهیم موجود در پایگاه داده های رابطه ای و قوانین حاکم بر آنها توضیح داده خواهد شد.
مفاهیم پایگاه داده های رابطه ی: هر پایگاه داده ی رابطه ای ، مجموعه ای محدود از جداول یا رابطه هاست. جدول یا رابطه: هر جدول یا رابطه، ساختاری دو بعدی شامل سطرها و ستونهاست. پایگاه داده های رابطه ای برای هر نوع موجودیت یا رابطه میان موجودیتهای یک جدول در نظر گرفته می شود. مثلا برای موجودیت دانشجو یک جدول و برای رابطه ی ثبت نام(رابطه ی میان درس و دانشجو) یک جدول در نظر گرفته می شود. هر سطر جدول نمایانگر یک موجودیت یا رابطهی خاص است مثلا هر سطر از جدول دانشجو، یک دانشجوی خاص را توصیف می کند و یا هر سطر از جدول ثبت نام، ثبت نام یک دانشجوی مشخص در یک درس مشخص در طول یک ترم مشخص را نشان می دهد. ویژگی: هر یک از ستونها یک جدول نمایانگر یکی از ویژگیهای نوع موجودیت است. مثلا جدول دانشجو می تواند شامل ستونهای st# (شماره دانشجویی)، name(نام دانشجو) وcourse (رشته ی تحصیلی ) دانشجو باشد. جدول دانشجو( ( Student
تاپل: هر سطر از جدول را یک تاپل نامند. مثلا در جدول Student،(هنر- مینا رضایی- 7902) یک تاپل است.
تذکر: در پایگاه داده ای رابطه ای ، مفاهیم رابطه با جدول ، مفاهیم تاپل با سطر و مفاهیم ویژگی با ستون کاملا هم ارز هستند. دامنه یک ویژگی : مجموعه مقادیری که یک خصوصیت می تواند دریافت کند. مثلا برای نمره مقادیری بین 0تا20 را بگیرد،یا نوع آن را مشخص کنیم(تعیین دامنه ی یک ویژگی String ،integer) درجه یک رایطه: تعداد ویژگی های یک جدول را درجه ی آن جدول یا رابطه نامند مثلا درجه ی جدول Student ، 3 است. کاردینالیتی یک رابطه: به تعداد تاپل های هر جدول در هر لحظه از حیات جدول کاردینالیتی رابطه گفته می شود که همواره در حال تغییر است. وابستگی تابعی(F.D):در یک جدول، ویژگی Bبه ویژگی A وابستگی تابعی دارد اگر به ازاء هر مقدار برای ویژگی A حداکثر یک مقدار برای ویژگی B وجود داشته باشد. این مفهوم را بصورت نشان میدهیم. در این صورت، Aتعیین کننده ی B نامیده می شود. مثال: برای رابطه های زیر مشخص کنید کدامیکF.D هستند.(جدول دانشجو) s#: شماره دانشجو- name : نام- course:رشته - :ID شماره ملی.
سوپر کلید: به مجموعه ای از ویژگی های یک جدول که بقیه ویژگی های جدول به این مجموعه وابستگی تابعی (F.D) داشته باشد.
وابستگی تابعی کامل(F.F.D): دریک جدول ویژگی BبهA وابستگی تابعی کامل دارد اگر اولا ویژگی B به Aوابستگی داشته باشد. ثانیا ویژگی Bبه هیچ جزئی از Aوابستگی تابعی نداشته باشد. مثال) مشخص کنید کدام یک از روابط زیر وابستگی تابعی کامل(F.F.D) می باشد. مثال) آیا میتوان گفت از سمت چپ ، رابطه به صورت ترکیبی باشد، رابطه F.F.D نیست ؟ کلید کاندید: سوپر کلیدی است که قابل تجزیه شدن نباشد. به عنوان مثال: کلید اصلی: معمولا طراح پایگاه داده با توجه به شرایط محیط عملیاتی از بین کلیدهای کاندید یکی را به عنوان کلید اصلی انتخاب می کند. هر جدول پایگاه داده باید دارای کلید اصلی باشد. نکته: فایده ی کلید اصلی برای هر جدول این است که به کمک این کلید می توان به تک تک رکوردهای جدول دسترسی پیدا کرد و بر روی آنها پردازش انجام داد. به عنوان مثال جدول زیر را در نظر بگیرید:
چون جدول کلید اصلی ندارد،اگر بخواهیم علی کریمی را پاک کنیم، با مشکل مواجه خواهیم شد. ولی اگر شماره دانشجویی را داشته باشیم و آن را به عنوان کلید اصلی در نظر بگیریم، می توانیم به راحتی نام مورد نظر را پاک کنیم.
کلید خارجی: اگر ویژگی Aبین دو یا(بیشتر) جدول (ها) مشترک باشد و در یکی از جداول کلید اصلی باشد،در جدول دیگر نقش کلید خارجی دارد. از کلید خارجی برای ارتباط بین جداول استفاده می شود. مثال)2 جدول زیرکه از جداول پایگاه داده ای یک دانشگاه میباشند را در نظر بگیرید:
City(city# , cityname) جدول
city#: کد شهر(به هر شهر یک کد منحصر به فرد نسبت داده شده است) بنابراین کلید اصلی در این جدول میباشد.
Cityname: نام شهر
student(st# ,sname, city#,field) جدول
st#: شماره دانشجویی(چون منحصر به فرد میباشد بنابراین کلید اصلی می باشد)
Sname: نام دانشجو city#: کد شهری که دانشجو در آن ساکن است Field: رشته تحصیلی دانشجو(در این دانشگاه هر دانشجو، تنها در یک رشته تحصیل می کند) *کلید خارجی در این جداول* از آنجا که ویژگی city# بین دو جدول city و student مشترک و در جدول city کلید اصلی است، بنابراین وcity# در جدول student کلید خارجی نسبت به جدول city است. می پسندم 2 0 2 تعداد آنلایک ها ( 0 ) از این کاربر
|
||||||||||||||||||||||||||||||||||||||||||||||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
دوشنبه ۳ تیر ۱۳۹۲ ۰۳:۳۰ بعد از ظهر
[3]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
تمرین:
فرض کنید سیستم پایگاه داده ها در یک دانشگاه شامل جداول ذیل باشد:
field(field#,fieldName)
در این جدول اطلاعات مربوط به رشته های تحصیلی ذخیره می شود:field#:کد رشته ی تحصیلی (برای هر رشته ی تحصیلی یک کد منحصر بفرد در نظر گرفته شده است ) fieldName:نام رشته ی تحصیلی
type(type#,typeName,fee)
در این جدول اطلاعات مربوط به نوع دروس ذخیره می شود:type#: کد نوع درس(به هر نوع درس یک کد منحصر بفرد داده شده است) typeName:نوع درس Fee: قیمت هر واحد
student(s#,sname,startYear,field#)
در این جدول اطلاعات مربوط به دانشجویان ذخیره می شود:s#:شماره دانشجویی Sname:نام دانششجو startYear: سال ورود به دانشگاه :field# کد رشته ی تحصیلی دانشجو
Course(crs#,cname,unit,type#)
در این جدول اطلاعات دروس ذخیره می شود:crs#: شماره ی درس Cname:نام درس Unit:تعداد واحد درس type#: کد نوع درس(نظری، عملی،...)
cf(crs#,field#,kind)
در این جدول مشخص می شود هر درس مربوط به کدام رشته های تحصیلی است:crs#: شماره درس field#: کد رشته ی تحصیلی Kind : این ویژگی مشخص می کند درس مورد نظر برای رشته ی مورد نظر گه حالتی دارد("P"برای پیش نیاز، "A"برای پایه،"T" برای تخصصی و"O" برای عمومی و"E" برای اختیاری)
grades(st#,crs#,term,grade)
در این جدول اطلاعات مربوط به نمرات دانشجویان ذخیره می شود:st#:شماره دانشجویی crs#:شماره درس :term نیمسال اخذ درس توسط دانشجو(مثلا 921به معنای ترم اول سال92 است) Grade : نمره اخذ شده
pre(crs#,pte#)
دراین جدول پیش نیازهای هردرس مشخص می شوند:crs# : شماره درس pte# : شماره ی درس پیش نیاز
prof(prof#,pname,degree)
در این اطلاعات مربوط به اساتید ذخیره می شود:prof#: شماره استاد( به هر استاد یک شماره ی منحصر به فرد داده شده است) Pname :نام استاد Degree :آخرین مدرک تحصیلی استاد("D"برای دکترا ،"F"برای فوق لیسانس و"L" برای لیسانس)
PC(prof#,crs#,term)
در این جدول مشخص می شود هر استاد در هر نیمسال چه دروسی را تدریس کرده است:prof# :شماره ی استاد crs# : شماره ی درس Term : نیمسال تحصیلی
tuition(field#,startYear,constTuition)
دراین جدول بر اساس سال ورود به دانشگاه، شهریه ی ثابت هر رشته ی تحصیلی مشخص می شود:field# :کد رشته ی تحصیلی startYear :سال ورود به دانشگاه :constTuitionشهریه ی ثابت برای درک بهتر مسئله به نمونه هایی از اطلاعات ذخیره شده در پایگاه اده ها توجه کنید:
می پسندم 2 0 2 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
یکشنبه ۹ تیر ۱۳۹۲ ۱۱:۲۱ بعد از ظهر
[4]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
جبر رابطه ای
جبر رابطه ای مجموعه ای از عملگرها وقوانینی است برای پردازش رابطه ها یا جداول بکار می روند، این عملگر ها عبارتند از:
در این آموزش عملگرهای جبر رابطه ای را مورد بررسی قرار می دهیم. در اغلب مثالها از جداول یک پایگاه داده شاما جداول ذیل می باشد:
S(S#,Sname,city)
در این جدول اطلاعات تولید کنندگان ذخیره می شود:S#:کد تولید کننده(هر تولید کننده یک کد منحصر بفرد دارد) Sname:نام تولید کننده City:شهری که تولید کننده در آن قرار دارد.
P(p#,pname,color)
در این جدول اطلاعات محصولات ذخیره می شود:p# :کد محصول(هر محصول یک کد منحصر بفرد دارد) Pname:نام محصول Color: رنگ محصول
J(j#,jname,city)
در این جدول اطلاعات پروژه ها ذخیره می شود:j#:کد پروژه(هر پروژه یک کد منحصر بفرد دارد.) : jnameنام پروژه City:شهری که پروژه در آن اجرا می شود
SPJ(s#,p#,j#,qty)
در این جدول مشخص می شود هر تولید کننده چند کیلو گرم از هر محصول را برای هر پروژه تولید کرده است:s#:کد تولید کننده p#:کد محصول j#:کد پروژه qty:مقدار فروش
S
عملگرهای یکتایی
عملگر انتخاب: از این عملکر برای گزینش افقی در یک جدول استفاده می شود. به عبارت دیگر ، با استفاده از این عملگر می توان تاپلیهایی(سطر) از یک جدول را که دارای شرط بخصوصی هستند انتخاب کرد. شکل کلی دستور:
( نام جدول) Ó
شرط
جدول R را درنظر بگیرید:
مثال1:تاپلهایی از جدول R را در انتخاب کنید که در آنها D>15 است.
این دستور را می توان به یکی از صورتهای ذیل نوشت:
Ó ( R )
D>15
یا
Select R Where D>15
یا
R Where D>15
نتیجه:
در شرط انتخاب میتوان از and وor و not استفاده کرد.
مثال2: تاپلهایی از جدول R را انتخاب کنید که در D>15 آنها و C='a' است.
Ó ( R )
D>15 and C='a'
یا
Select R Where D>15 and C='a'
یا
R Where D>15 and C='a'
نتیجه:
مثال3:مشخصات تولید کنندگان تهرانی را بیابید (با توجه به پایگاه دادهای که در ابتدا شرح داده شد)
کافیست از جدول تاپلهایی را انتخاب کنیم که مربوط به شهر تهران هستند:
Ó ( S )
'تهران 'City =
یا
'تهران Select S Where City ='
یا
'تهرانS Where City ='
نتیجه:
مثال4: مشخصات فروشهای مربوط به محصولات 'P2' و'P3' و'P4' را بیابید.
Ó ( SPJ )
P#='P2' or P#='P3' or P#='P4'
یا
Select SPJ Where P#='P2' or P#='P3' or P#='P4'
یا
SPJ Where P#='P2' or P#='P3' or P#='P4'
نتیجه:
مثال5: مشخصات فروشهایی رابیابید که مربوط به محصولات 'P2' یا 'P3' یا 'P4' نیستند.
Ó ( SPJ )
P#<>'P2' and P#<>'P3' and P#<>'P4'
یا
Select SPJ Where P#<>'P2' and P#<>'P3' and P#<>'P4'
یا
SPJ Where P#<>'P2' and P#<>'P3' and P#<>'P4'
نتیجه:
عملگر پرتو:
از این عملگر برای گزینش عمودی در یک جدول استفاده می شود. به عبارت دیگر ، با استفاده از این عملگر می توان ستونهای نورد نظر از یک جدول را انتخاب کرد. مثال1: ستونهای A و D از جدول Rرا انتخاب کنید. این دستور را می توان به یکی از صورتهای ذیل نوشت:
( R ) ∏
A, B
یا:
R[A,B]
یا:
Project R over A,B
نتیجه:
مثال 2: نام کلیه ی شهرهایی را بیابید که تولید کننده ای در آنها ساکن است.
کافیست ستون از جدولS را انتخاب کنیم:
(S ) ∏
city
یا:
R[city]
یا:
Project S over city
نتیجه:
عملگر بسط : از عملگر بسط برای اضافه کردن یک یا جند ستون به یک جدول استفاده می شود. مقادیر این ستونها بر اساس مقادیر ستونهای دیگر محاسبه می شود. قالب کلی از این عملگر به شکل ذیل است:
نام ستون جدید as(عبارت محاسباتی) add نام جدول extend
مثال: لیستی از کلیه ی ستونهای جدول و یک ستون جدید تهیه کنید که میزان فروش بر حسب تن را نشان دهد ( qty بر حسب کیلو گرم است)
extend SPJ add (qty/1000) as tonQty
نتیجه:
عملگر خلاصه سازی یا گروهبندی
با استفاده از این عملگر می توان تاپلهای یک جدول را برا ساس مقادیر یک ا چند ستون گروهبندی کرد و روی هر گروه بصورت مجزا محاسبه ای را انجام داد. از تابع sumبرای محاسبه ی مجموع ، avg از تابع برای محاسبه ی میانگین ، ازmax تابع برای محاسبه ی ماکزیمم و از تابع min برای محاسبه ی مینیمم مقادیر یک ستون از هر گروه استفاده می شود همچنین ، با استفاده از تابع count می توان تعداد تاپلهای هر گروه را محاسبه کرد. . قالب کلی از این عملگر به شکل ذیل است:
نام ستون جدید as عبارت محاسباتی add ( نام ستون،ها) dy نام جدول summarize
مثال1: لیستی از کد محصولات و مقدار کل تولید هر یک از آنها تهیه کنید.
summarize SPJ dy (P#) add sum(qty) as total
مثال 2: لیستی از کد محصولات ، کد پروژه ها و میزان کل فروش محصول مورد نظر برای پروژه ی مورد نظر تهیه کنید.
در اینجا باید میزان کل فروش را یرای هر جفت کد محصول/ کد پروژه بطور جداگانه محاسبه کنیم. پس لازم است لیست را بر اساسp# وj# گروهبندی کنیم:
summarize SPJ dy (P#,j#) add sum(qty) as total
ویرایش ارسال توسط : programmer
در تاریخ : یکشنبه ۹ تیر ۱۳۹۲ ۱۱:۲۳ بعد از ظهر می پسندم 4 0 4 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
سه شنبه ۱۱ تیر ۱۳۹۲ ۱۰:۰۵ بعد از ظهر
[5]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
عملگرهای اجتماع، اشتراک و تفاضل عملگرهای اجتماع و اشتراک و تفاضل تنها روی جداول سازگار قابل اعمال هستند. جداول سازگار جداولی هستند که تعداد ویژگیها و دامنه ی ویژگیهای متناظر آنها یکسان باشد. جداول T1و T2 را در نظر بگیرید: عملگر اجتماع: اجتماع دو جدول سازگار جدولی خواهد بود که مجموعه ی عنوان آن با مجموعه ی عنوان دو جدول یکسان است و بدنه ی آن شامل تاپلها ی هر دو جدول می باشد(تاپلهای تکراری حذف می شوند). برای عملگر اجتماع از نماد U یا union استفاده می شود. مثال1:T1 U T2 را بدست آورید. کافیست اجتماع ستون city از جدول S و ستون city از جدول J را بدست آوریم:
S[city] U J[city]
یا
S[city] union J[city]
نتیجه:
T1 U T2 ≡ T2 U T1
T1 U (T2 U T3) ≡ (T1 U T2) U T3 عملگر اشتراک: اشتراک دو جدول سازگار جدولی خواهد بود که مجموعه ی عنوان آن با مجموعه ی عنوان دو جدول یکسان است و بدنه ی آن شامل تاپلهای مشترک بین دو جدول می باشد . برای عملگر اشتراک از نماد ∩ یا intersect استفاده می شود. مثال 1 : T1 ∩ T2 را بدست آورید. کافیست اشتراک ستون city از جدول S و ستون city از جدول J را بدست آوریم:
S[city] ∩ J [city]
یا
S[city] intersect J [city]
نتیجه:
T1 ∩ T2 ≡ T2 ∩ T1
T1 ∩ ( T2∩ T3) ≡ ( T1 ∩ T2) ∩ T3 عملگر تفاضل: نتیجه ی تفاضل دو جدول سازگار ( T1- T2) جدولی خواهد بود که مجموعه ی عنوان آن با مجموعه ی عنوان دو جدول یکسان است و بدنه ی آن شامل تاپلهایی از جدول T1 است که در جدول T2 وجود ندارند. مثال 1: T1- T2 را بدست آورید. مثال 2: نام شهرهایی را بیابید که تولیید کننده ای در آنها قرار دارد ولی پروژه ای در آنها در حال اجرا نیست. کافیست تفاضل ستون city از جدول S و ستون city از جدول J را بدست آوریم:
S[city] – J [city]
نتیجه:
T1- T2 ≠ T2 – T1
T1 – ( T2 – T3 ) ≠ ( T1 - T2) -T3 می پسندم 2 0 2 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
پنجشنبه ۱۳ تیر ۱۳۹۲ ۰۳:۲۸ قبل از ظهر
[6]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
عملگرهای ضرب و پیوند:
عملگر ضرب:حاصلضرب دو جدول دلخواه ، جدولی خواهد بود شامل ویژگیهای هر درو جدول (حتی ویژگیهای تکراری) و تاپلهایی که از ضرب دکارتی تاپلهای دو جدول بدست می آیند. به عبارت دیگر، هر یک از تاپلهای یک جدول دز کنار هر یک از تاپلهای جدول دیگر قرار می گیرند. بنابراین، اگر یک جدول با 3 تاپل را در یک جدول با 5 تاپل ضرب کنیم، جدول نتیجه 15=5×3 تاپل خواهد بود. برای عملگر ضرب از نماد× یا timesاستفاده می شود. مثال 1:دو جدولR1 و R2 را در نظر بگیرید و R2× R1 را بدست آورید.
مثال2: J× Sرا بدست آورید.
عملگر ضرب دارای خاصیت جابجایی و شرکت پذیری است. به عبارت دیگر:
R1×R2 ≡ R2×R1
R1×(R2×R3) ≡ (R1×R2) ×R3
عملگر پیوند عملگر پیوند روی هر دو جدول دلخواه قابل اعمال است. این عملگر دارای انواع مختلف است: پیوند شرطی یا پیوند تتا: این عملگر تاپلهایی از حاصلضرب دو جدول را که دارای شرط بخصوصی هستند انتخاب می کند. برای پیوند شرطی از نماد ∞ یا join استفاده می شود. مثال1: R1 join R2 را بدست آورید. R1.D<E مرحله ی 1: بدست آوردن R1×R2 ( نتیجه ی این مرحله را قبلا بدست آورده ایم) مرحله ی 2: انتخاب تاپلهایی که در آنها R1.D<E است: تذکر: برای جلوگیری از اتلاف وقت می توان نتیجه ی پیوند شرطی دو جدول را تنها در یک مرحله بدست آورد. برای این کار کافیست تنها تاپلهایی از دو جدول را در هم ضرب کنیم که شرط مورد نظر را دارا هستند. مثال2: join SPJ S را بدست آورید. qty<4000 عملگر پیوند شرطی دارای خاصیت جابجایی است ولی شرکت پذیری ندارد. به عبارت دیگر:
R1∞R2 ≡ R2∞R1
شرط شرط R1 join R2 ) join R3 ≠ R1 join (R2 join R3) ) شرط 2 شرط 1 شرط 2 شرط 1 پیوند طبیعی : پیوند طبیعی مانند پیوند شرطی است با این تفاوت که در آن هیچ شرطی ذکر نمی شود و شرط آن بطور پیش فرض ، تساوی ویژگیهای مشترک بین دو جدول است. همچنین ، در پیوند طبیعی ستونهای تکراری حذف می شوند. برای پیوند شرطی از نماد ∞ یا join استفاده می شود. مثال1:R1 join R2 را بدست آورید. مرحله ی 1:بدست آوردن حاصلضرب دو جدول (این مرحله را در مثالهای قبل انجام داده ایم) مرحله ی 2: انتخاب تاپلهایی که در آنها R1.D = R2.D است:
مرحله ی 3:حذف ستونهای تکراری:
تذکر: برای جلوگیری از اتلاف وقت میتوان پیوند طبیعی دو جدول را تنها در یک مرحله بدست آورد.برای این کار کافیست تنها تاپلهایی از دو جدول را در هم ضرب کنیم که مقادیر ستونهای مشترک در آنها برابر است و ستونهای مشترک را تنها یکبار در نتیجه بیاوریم.
مثال 2: S join SPJ را بدست آورید.
نکته: چنانچه بین دو جدول هیچ ویژگی مشترکی وجود نداشته باشد، پیوند طبیعی دو جدول با حاصلضرب دو جدول معادل خواهد بود. چنانچه کلیه ی ویژگیهای دو جدول یکسان باشند، پیوند طبیعی دو جدول با اشتراک دو جدول معادل خواهد بود.
عملگر پیوند طبیعی دارای خاصیت جابجایی و شرکت پذیری است. به عبارت دیگر:
R1 join R2 = R2 join R1
R1 join R2 join R3 = R1 join (R2 join R3)
شبه پیوند این عملگر دقیقا مانند پیوند طبیعی است با این تفاوت که در نهایت تنها ستونهای جدول اول انتخاب می شود. برای شبه پیوند دو جدول R1 و R2 از یکی از نمادهای ذیل استفاده می شود:
R1 R2
R1 SJ R2
R1 Semi- join R2
مثال1: R1 SJ R2 را بدست آورید. مرحله 1: بدست آوردن R1×R2 مرحله 2: انتخاب تاپلهایی از R1×R2 که در آنها ویژگیهای مشترک دو جدول دارای مقادیر مساوی هستند(تاپلهایی که در آنها R1.D=R2.D است):
مرحله 3: انتخاب ستونهای مربوط به جدول R1:
مثال 2: R1 SJ R2 را بدست آورید.
عملگر شبه پیوند دارای خاصیت جابجایی و شرکت پذیری نیست به عبارت دیگر:
R1 SJ R2 ≠ R2 SJ R1
R1 SJ R2) SJ R3 ≠ R1 SJ (R2 SJ R3) )
می پسندم 3 0 3 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
شنبه ۱۵ تیر ۱۳۹۲ ۰۱:۰۲ قبل از ظهر
[7]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
عملگر تقسیم:
تنها در صورتی می توان جدولT1 را بر جدول T2 تقسیم کرد که مجموعه ی عنوان جدول T2 زیر مجموعه ای از مجموعه ی عنوان جدول T1 باشد. مجموعه ی عنوان T1÷T2 شامل ویژگیهایی از جدول T1 خواهد بود که در جدول T2 وجود ندارند:
H(T1÷T2)=H(T1) - H(T2)
از طرف دیگر ، تنها مقادیری در بدنه ی نتیجه وارد می شوند که به ازاء همه ی تاپلهای T2 در جدول T1 وجود داشته باشند. برای تقسیم ،از نماد ÷ یا divideBy استفاده می شود مثال1: جداول T1 و T2را در نظر بگیرید:
از آنجا که T2 زیر مجموعه T1 است می توان جدول T1را بر جدول T2تقسیم کرد.
H(T1÷T2)=H(T1) - H(T2)={A,B,C,D}- {C,D}={A,B}
از طرف دیگر، تنها (A,B)- هایی در جدول نتیجه وارد می شوند که هم به ازاء (C,D)=(C,10) وجود داشته باشند و هم به ازاء (C,D)=(g, 20) در جدول T1 تنها است (A,B)=(a,b) که هم به ازاء (C,D)=(C,10) وجود دارد و هم به ازاء (C,D)=(g, 20) پس نتیجه تنها شامل تاپل ((a,b خواهد بود: عمگر جایگزینی با استفاده از عملگر جایگزینی میتوان نتیجه ی یک عملیات را در جدول ذخیره کرد و در عملیات بعدی از آن استفاده کرد. برای عملگر جایگزینی از نماد ← یا giving استفاده می شود مثال: اساسی تولید کنندگانی را که در پروژه J1 شرکت کرده اند بدست آورید. روش 1:
Select SPJ where j#=' j1' giving temp1
Temp1 join S giving temp2
Project temp2 over sname
روش2:
Temp1 ←Ó (SPJ)
J#='J1' Temp2 ← temp1 ∞ S ∏ (temp2) Sname
روش3: تنها در یک مرحله
((select SPJ where j#'j1') join S)[sname]
ویا:
∏ ((σ (SPJ)) ∞ S
Sname J#='J1'
نتیجه:
می پسندم 3 0 3 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
شنبه ۲۲ تیر ۱۳۹۲ ۰۴:۲۴ بعد از ظهر
[8]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
زبان پرس و جوی ساخت یافته(SQL)
همانطور که قبلا نیز به آن اشاره شد، هر کاربر یا برنامه ی کاربردی برای ارتباط با پایگاه داده ها یک زبان فرعی داده ای استفاده می کند. SQL معروفترین زبان فرعی داده ای است که توسط کلیه ی DBMS-های کنونی دنیا شامل SQL SERVER،Oracle، DB2،Informix و ....پشتیبانی میشود.به عبارت دیگر برای نوشتن اغلب برنامه های کاربردی اعم از برنامه های حسابداری ، حقوق و دستمزد، انبارداری ، سایتهای وب که با پایگاه داده ها سر و کار دارندو...فارغ از زبان برنامه نویسی و همچنین DBMS مورد استفاده ، استفاده از زبان SQL الزامی است. دستورات SQL همانند هر زبان فرعی داده ای دیگر به سه گروه تقسیم می شوند:
دستورات تعریف داده یا DDL:
از دستورات تعریف دادها برای تعیین و یا تغییر ساختار دادها استفاده می شود. این دستورات عبارتند از : دستور ایجاد پایگاه دادها: قبل از ایجاد جداول لازم است یک پایگاه داده ایجاد شود و سپس جداول مورد نظر در داخل آن ساخته شوند. قالب کلی این دستور به شکل ذیل است:
نام پایگاه دادها Create database
مثال: پایگاه داه ای به نام Sale ایجاد کنید.
Create database Sale
دستور ایجاد جدول
قالب کلی این دستور به شکل ذیل است:
[not null][unique], نوع ویژگی 1 نام ویژگی 1) نام جدول Create table
[not null][unique], نوع ویژگی 2 نام ویژگی 2
[not null][unique], نوع ویژگی 3 نام ویژگی 3
, ......
,(نام ویژگیهای تشکیل دهنده ی کلید اصلی Primary key( , نام جدول مورد نظر references(نام ویژگیهای کلید خارجی1 foreign key( , نام جدول مورد نظر references(نام ویژگیهای کلید خارجی2 foreign key(
.....
(]شرط مورد نظر[check
تذکر: در کلیه دستورات برای مشخص کردن قسمتهای اختیاری از کروشه استفاده شده است. تذکر: در صورت استفاده از عبارت not null برای یک ویژگی ، DBMS ازدرج تاپلهایی که در انها برای ویژگی مورد نطر مقداری وارد نشده باشد جلوگیری می کند.در صورت استفاده از عبارت unique برای یک ویژگی ، DBMS از درج تاپلهایی که در آنها برای ویژگی مورد نظر مقدار تکراری وارد شده باشد جلوگیری می کند. معروفترین انواع داده در SQL عبارتند از: مثال: جدولS را ایجاد کنید بطوریکه کاربر مجاز نباشد هیچ تاپلی با sname خالی یا تکراری در این جدول درج کند:
Create table S (s# char(2),
Sname nchar(30) not null unique,
city nchar(20),
Primary key(s#)
مثال: جدول SPJ را ایجاد کنید بطوریکهبازه ی مجاز برای qtyاعداد بین 500 تا 20000 باشد. برای تعیین قوانین جامعیت داده ای از قسمت check استفاده می شود:
Create table SPJ( s# char(2),
P# char(2),
J# char(2),
qty integer, Primary key(s#, P#, J#), foreign key( s#)references(S), foreign key( P#)references(P), foreign key( J#)references(J), check( qty 500 < and qty<20000 )) اضافه کردن یک ستون جدید به یک جدول قالب کلی این دستور به شکل ذیل است:
(مشخصات ستون جدید نام ستون جدید) add نام جدول alter table
مثال: در جدول S، ستون جدید با نام برای درج شماره تلفن تولید کنندگان اضافه کنید.
( alter table S add(tel char(10)
تغییر مشخصات یک ستون از یک جدول قالب کلی این دستور به شکل ذیل است:
(مشخصات جدید نام ستون) modify نام جدول alter table
مثال: در جدول S، طول ستون را از 30کاراکتر به 20 کاراکتر تغییر دهید.
alter table S modify (sname nchar(20) not null unique)
حذف یک جدول قالب کلی این دستور به شکل ذیل است:
نام جدول drop table
مثال:جدول S را حذف کنید.
drop table S
می پسندم 2 0 2 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
جمعه ۲۸ تیر ۱۳۹۲ ۰۱:۴۷ بعد از ظهر
[9]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
دستورات دستکاری داده ها
از این دستورات برای تهیه ی گزارشات (خواندن تاپلها) ، درج تاپلها، حذف تاپلها و تغییر تاپلها استفاده می شود. این دستورات عبارتند از: دستورات انتخاب این دستورات یکی از پر کاربردترین دستورات SQLاست. از این دستور برای انتخاب تاپلها و ستونهای مورد نظر از یک یا چند جدول استفاده مس شود.قالب کلی این دستور به شکل ذیل است:
نام ستونها و یا عبارات محاسباتی مورد نظر Select [distinct]
نام جدول from
]شرط روی تاپلها [ where
]نام ستونهایی که قرار است لیست براساس آنها گروه بندی شود [ group by ] شرط روی گروهها [ having ] نام ستونهایی که قرار است بر اساس آنها مرتب شود [ order by
نکته: برای حذف تاپلهای تکراری کافیست از عبارت distinct استفاده کنیم.
برای درک قسمتهای مختلف این دستور به مثالهای ذیل توجه کنید: مثال:نام کلیه ی شهرهایی را بیابید که تولید کننده ای در آنها قرار دارد. برای این کار کافیست ستون city از جدول S را انتخاب کنیم.
Select city
From S
و یا میتوان نام جدول را نیز ذکر کرد:
Select S. city
From S
خروجی این پرس و جو به شکل ذیل خواهد بود: مشاهده می کنید که در این جدول تاپلهای تکراری وجود دارند. برای حذف تاپلهای تکراری کافیست از عبارت distinct استفاده کنیم:
Select distinct city
From S
خروجی این پرس و جو به شکل ذیل خواهد بود: مثال: مشخصات کلیه ی تولید کنندگان رابیابید برای این کار کافیست تمام ستونهای جدول S را انتخاب کنیم:
Select S#,sname,city
From S
به جای ذکر نام تمام ستونهای یک جدول می توان از* استفاده کرد(* به معنی تمام ستونهای جدول است)
* Select
From S
خروجی این پرس و جو به شکل ذیل خواهد بود:
قسمت Where : از این قسمت Where برای انتخاب تاپلهایی از جدول که شرط بخصوصی دارند استفاده می شود.
نام تولید کنندگان تهرانی را بیابید
Select sname
From S
' تهران ' = where city
خروجی این پرس و جو به شکل ذیل خواهد بود:
می پسندم 4 0 4 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
سه شنبه ۸ امرداد ۱۳۹۲ ۰۳:۰۳ بعد از ظهر
[10]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
عملگرهای in و not in : از عملگرهای in و not in برای تست وجود یا عدم یک مقدار در داخل یک مجموعه استفاده می شود. مثال: مشخصات فروشهای مربوط به محصولات 'p2' و'p3' و 'p4' را بیابید. روش اول:
Select *
روش 2: استفاده از عملگر in
From SPJ Where P#='p2' or P#='p3' or P#='p4'
Select *
خروجی این پرس و جو به شکل ذیل خواهد بود:From SPJ Where P# in ('p2','p3' , 'p4') مثال: مشخصات فروشهای را بیابید که مربوط به محصولات 'p2'یا 'p3'یا 'p4' نیستند. روش1:
Select *
روش 2: استفاده از عملگر not in
From SPJ Where P#<>'p2' and P#<>'p3' and P#<>'p4'
Select *
خروجی این پرس و جو به شکل ذیل خواهد بود:From SPJ Where P# not in ('p2','p3' , 'p4') می پسندم 2 0 2 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
پنجشنبه ۱۰ امرداد ۱۳۹۲ ۱۱:۴۳ بعد از ظهر
[11]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
عملگر like: از عملگر like برای جستجوی یک عبارت در داخل مقادیر یک ستون رشته ای استفاده می شود.
مثال:مشخصات تولید کنندگانی را بیابید که در نام عبارت " مصالح " بکار رفته باشد. برای این پرس و جو لازم است از عملگر like استفاده کنیم.
Select *
From S
' %مصالح% Where Sname like '
خروجی این پرس وجو به شکل ذیل خواهد بود. تذکر : دراین پرس و جو چون محل قرار گرفتن عبارت " مصالح" مهم نبود، در دو طرف عبارت از % استفاده کردیم. چنانچه نام تولیدکنندگانی که نام آنها با عبارت " مصالح" شروع می شود مورد نظر باشد، از دستور ذیل :
Select *
و چنانچه نام تولیدکنندگانی که نام آنها به عبارت " مصالح" ختم می شود مورد نظر باشد ، از دستور ذیل استفاده می کنیم.From S '%مصالح Where Sname like '
Select *
From S ' مصالح% Where Sname like ' می پسندم 3 0 3 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
دوشنبه ۱۴ امرداد ۱۳۹۲ ۰۲:۳۳ قبل از ظهر
[12]
|
|||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
تابع sum : از تابع sum برای محاسبه ی مجموع مقادیر یک ستون استفاده می شود
مثال: میزان کل فروش 'P1' را بیابید. برای این کار کافیست مجموع مقادیر ستون qty را در فروشهای مربوط به'P1' محاسبه کنیم:
Select sum(qty)
خروجی این پرس و جو به شکل ذیل خواهد بود:From SPJ Where P#='P1' می پسندم 4 0 4 تعداد آنلایک ها ( 0 ) از این کاربر
|
|||
|
امکان افزودن پاسخ به این موضوع وجود ندارد امکان افزودن موضوع در این بخش وجود ندارد |
|
برچسب ها
|
اصول ، مفاهیم ، پایگاه ، داده ، |
|