انجمن یاران منتظر

ختم قرآن



آخرین ارسال ها
پروژه کرونا(COVID 19) ..:||:.. لیست برنامه ختم قرآن یاران منتظر ..:||:.. Ƹ̵̡Ӝ̵̨̄Ʒ سفره هفت سین امسال اعضای انجمن یاران منتظر Ƹ̵̡Ӝ̵̨̄Ʒ ..:||:.. تا حالا به لحظه تحویل سال 1450 فکر کردید!!؟؟ ..:||:.. Ƹ̵̡Ӝ̵̨̄Ʒ سفره هفت سین سال 1395 اعضای انجمن یاران منتظر Ƹ̵̡Ӝ̵̨̄Ʒ ..:||:.. اگر بفهمید بیشتر از یک هفته دیگر زنده نیستید، چی کار می کنید؟! ..:||:.. **متن روز پدر و روز مرد** ..:||:.. الان چتونه؟ ..:||:.. 🔻هدیه‌ تحقیرآمیز کِندی ..:||:.. ღ ღ ღتبریک ازدواج به دوست خوبم هستی2013 جان عزیز ღ ღ ღ ..:||:..

نوار پیام ها
( یسنا : ▪️خــداحافظ مُــــحَرَّم 😭 نمى دانم سال دیگر دوباره تو را خواهم دید یا نه؟!... 🖤اما اگر وزیدى و از سَرِ کوى من گذشتى، سلامَم را به اربابم برسان... ◾️ بگو همیشه برایَت مشکى به تَن مى کرد و دوست داشت نامَش با نام تو عجین شود!... ◾️بگو گرچه جوانى مى کرد، اما به سَرِ سوزنى ارادتش هم که شده، تو را از تَهِ دل دوست داشت... ◼️با چاى روضه تو و نذری ات، صفا مى کرد و سَرَش درد مى کرد براى نوکرى... 🏴 مُحَرَّم جان؛ تو را به خدا مى سپارم... و دلم شور مى زند براى \"صَفر\"ى که دارد از \"سَفَر\" مى رسد... # )     ( سینا : حضرت فاطمه زهرا (سلام الله علیها): «ما جَعَلَ اللّه ُ بَعدَ غَدیرِخُمٍّ مِن حُجَّةٍ و لاعُذرٍ؛ خداوند پس از غدیرخم برای کسی حجّت و عذری باقی نگذاشت.» «دلائل الإمامَه، ص 122» )     ( فاطمه 1 : ای روح دو صد مسیح محتاج دَمَت زهرایی و خورشید غبار قدمت کی گفته که تو حرم نداری بانو؟ ای وسعت دل‌های شکسته، حَرَمت. (شهادت حضرت زهرا تسلیت باد) )     ( programmer : امام علی (ع):مردم سه گروهند: (1) دانشمندی خدایی، (2) دانش آموزی بر راه رستگاری (3) و پشه های دستخوش باد و طوفان و همیشه سرگردان، که از پی هر جنبنده و هر صدا می روند، و با وزش هر بادی، حرکت می کنند، نه از پرتو دانش، روشنی یافتند، و نه به پناهگاه استواری پناه گرفتند. )     ( programmer : امام علی ع : عاقل ترین مردم کسی است که عواقب کار را بیشتر بنگرد. )     ( programmer : امام علی (ع):دعوت کننده ای که فاقد عمل باشد مانند تیر اندازی است که کمان او زه ندارد. )     ( programmer : امام علی(ع): در فتنه ها همچون بچه شتر باش که نه پشت دارد تا بر آن سوار شوند و نه پستانی که از آن شیر بدوشند )     ( سینا : هزارها سال از هبوط آدم بر سیاره‌ی زمین گذشته است و هنوز نبرد فی ما بین حق و باطل بر پهنه‌ی خاك جریان دارد، اگرچه دیگر دیری است كه شب دیجور ظلم از نیمه گذشته است و فجر اول سر رسیده و صبح نزدیك است. )     ( programmer : فتنه مثل یک مه غلیظ، فضا را نامشخص میکند؛ چراغ مه‌شکن لازم است که همان بصیرت است....(مقام معظم رهبری) )     ( سینا : یاران! شتاب كنید ، قافله در راه است . می گویند كه گناهكاران را نمی پذیرند ؟ آری ، گناهكاران را در این قافله راهی نیست ... اما پشیمانان را می پذیرند )     ( سینا : برای حفظ سلامتی، این دعا را هر صبح و شب بخوانید: اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وَ آلِ مُحَمَّدٍ**اللَّهُمَّ اجْعَلْنِي فِي دِرْعِكَ الْحَصِينَةِ الَّتِي تَجْعَلُ فِيهَا مَنْ تُرِيدُ. (سه ‌مرتبه) خداوندا، مرا در زره نگهدارنده و قوی خود _ که هر کس را بخواهی در آن قرار می‌دهی _ قرار بده! )     ( فاطمه 1 : ای بهترین بهانه خلقت ظهور کن صحن نگاه چشم مرا پر ز نور کن +++ چشمم به راه ماند بیا و شبی از این پس‌کوچه‌های خاکی قلبم عبور کن +++ آقا بیا و با قدمی گرم و مهربان قلب خراب و سرد مرا گرم شور کن )     ( سینا : دود می خیزد ز خلوتگاه من کس خبر کی یابد از ویرانه ام ؟ با درون سوخته دارم سخن کی به پایان می رسد افسانه ام ؟ )    
مدیریت پیام ها


اگر این اولین بازدید شما از انجمن یاران منتظراست ، میبایست برای استفاده از کلیه امکانات انجمن عضو شوید و یا اگر عضو انجمن می باشید وارد شوید .


انجمن یاران منتظر » کامپیوتر و اینترنت » آموزش برنامه نویسی » اصول و مفاهیم پایگاه داده



اصول و مفاهیم پایگاه داده

 سلام بر رهپویان علم قصد داشتم یه سری آموزش SQL Server  2008 بزارم ولی لازم دیدم قبل از آموزش اصول و مفاهیم پایگاه داده گفته شود. معتقدم همانطور که یک برنامه نویس اولین قدم خود را برای ورود به دنیای برنامه نویسی با آموزش طراحی الگوریتم آغاز می نماید، کسانی هم که میخواهند طراح پایگاه داده خوبی باشند و بخواهند در این نوع زبانها موفق باشند باید به صورت پایه ای یاد بگیرند و در ابتدا با اصول و مفاهیم پایگاه داده آشنا شوند. تمام تلاش خودم را میکنم تا
hw,g , lthidl \hd'hi nhni


امکان افزودن پاسخ به این موضوع وجود ندارد امکان افزودن موضوع در این بخش وجود ندارد
صفحه 1 از 3 < 1 2 3 > آخرین »


اطلاعات نویسنده
سه شنبه ۲۱ خرداد ۱۳۹۲ ۱۰:۴۶ بعد از ظهر
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من


مدال ها:4
کاربران برتر
کاربران برتر
مدال 2 سالگی عضویت
مدال 2 سالگی عضویت
مدال تخصص
مدال تخصص
نشان لیاقت
نشان لیاقت

|

 سلام بر رهپویان علم

قصد داشتم یه سری آموزش SQL Server  2008 بزارم ولی لازم دیدم قبل از آموزش اصول و مفاهیم پایگاه داده گفته شود. معتقدم همانطور که یک برنامه نویس اولین قدم خود را برای ورود به دنیای برنامه نویسی با آموزش طراحی الگوریتم آغاز می نماید، کسانی هم که میخواهند طراح پایگاه داده خوبی باشند و بخواهند در این نوع زبانها موفق باشند باید به صورت پایه ای یاد بگیرند و در ابتدا با اصول و مفاهیم پایگاه داده آشنا شوند.
تمام تلاش خودم را میکنم تا مطالب  اصول و مفاهیم پایگاه داده را به صورت مختصر و مفید بیان نماییم .امیدوارم شما عزیزان بتوانید استفاده نمایید.

 

 زکات علم نشر و گسترش آن می باشد.                     امام علی (ع)
 















11 تشکر شده از کاربر programmer برای ارسال مفید :
admin , قمر , ريحانه , Mohammad - 23 , مبشره , کوثر , الما , عباس خادم , , میثاق واقعی , alireza_8647 ,



  می پسندم 9     0  9 
 
 
تعداد پسند های ( 9 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر


    * پاسخ با بیشترین پسند
  1. پسندها :9 برای اطلاع از پاسخ با بیشترین پسند ،دراین موضوع کلیک کنید
  2. پسندها :3 برای اطلاع از پاسخ با بیشترین پسند ،دراین موضوع کلیک کنید
  3. پسندها :2 برای اطلاع از پاسخ با بیشترین پسند ،دراین موضوع کلیک کنید
  4. پسندها :2 برای اطلاع از پاسخ با بیشترین پسند ،دراین موضوع کلیک کنید
  5. پسندها :2 برای اطلاع از پاسخ با بیشترین پسند ،دراین موضوع کلیک کنید

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
یکشنبه ۲۶ خرداد ۱۳۹۲ ۰۷:۱۰ بعد از ظهر نمایش پست [1]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من



قبل از تعریف پایگاه داده ها لازم است تفاوت میان داده و اطلاع را درک کنیم.
داده ها: مقادیر خامی است که به تنهایی معنی و مفهوم خاصی ندارد. و نمی تواند هیچ تاثیر در تصمیم گیریهای سیستم داشته باشد. بعنوان مثال ، موارد ذیل سه داده در یک سیستم فروشگاه می باشند:
شماره فاکتور=1001
تاریخ فاکتور=4/4/83
 
اطلاعات: نتیجه حاصل از پرداش داده ها را می توان اطلاعات نامید. اطلاعات ، مبنای تصمیم گیری در سازمانها هستند.

روش های ذخیره سازی اطلاعات:

 ا- روش دستی: در این روش اطلاعات در پوشه های جداگانه ذخیره می شد.

معایب روش دستی:
  • زمان زیاد در پردازش داده ها(جستجو:بایستی پوشه ها یکی یکی جست و جو شوند)
  • هزینه ی نگهداری
  • حجم زیاد
  • افزونگی اطلاعات
  • امنیت کم
  • نیروی انسانی زیاد
  • عدم یکپارچگی اطلاعات
2- سیستم فایلینگ

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

معایب سیستم فایلینگ:
  • افزونگی اطلاعات: هر یک از بخشهای سازمانهایی که  از سیستم های فایل استفاده مس کردند، سیستم فایل مجزایی داشتند و حتی در صورت مشترک بودن داده های مورد استفاده، بخشهای مختلف سازمان از فایلها به صورت اشتراکی استفاده نمی کردند مثلا قسمت آموزش یک دانشگاه از یک نسخه از فایل دانشجویان و قسمت امور مالی از نسخه ی دیگری از فایل دانشجویان که عینا مشابه هم بودند استفاده می کردند. به عبارت دیگر، یک قلم داده در چندین جای مختلف ذخیره می شد. این افزونگی یا تکرار داده ها، سیستم فایل را با مشکلاتی مواجه می کرد
  • عدم وجود امکانات لازم برای تامین امنیت داده ها: سیستم های فایل فاقد امکانات لازم برای تعیین حدود اختیارات هر کاربر بودند. به عبارت دیگر ، در این سیستمها هر کاربر با هر سمت و اختیاراتی می توانست به کلیه ی داده های ذخیره شده در فایلها دسترسی داشته باشد. به راحتی می توانید خطرات نا امنی در دسترسی به داده ها را درک کنید!
  • وابستگی داده ها: فرض کنید در فایل دانشجویان، برنامه نویس حداکثر 20 کاراکتر را به فیلدname اختصاص داده باشد و پس از مدتی بخواهد طول این فیلد را به 30 کاراکتر تغییردهد. در این صورت، علاوه بر آنکه مجبور است اطلاعات موجود در فایل قدیمی را به یک فایل جدید با ساختار جدید منتقل کند(که البته خود این کار نیز ساده نمی باشد)، مجبور است که کلیه ی قسمتهایی از برنامه که با فایل دانشجویان مرتبط می باشند را نیز تغییر دهد چرا که برنامه ها کاملا به ساختار فیزیکی فایل وابسته اند. در واقع، وابستگی داده ای به "لزوم تغییر کد برنامه های مربوط به یک فایل پس از اعمال یک تغییر در مشخصات یکی از فیلدهای فایل( مثل تغییر نوع یک فیلد از  String به integer و یا تغییر طول یک فیلد)" اطلاق می شود. در سیستمهای فایل، وابستگی داده ای به شدت زیاد است.
  • وابستگی ساختاری: فرض کنید برنامه نویس بخواهد در فایل دانشجویان که مدتها مورد استفاده بوده است، یک فیلد جدید برای ذخیره ی شماره ی شناسنامه اضافه کند و یا یکی از فیلدهای موجود در آن را حذف کند. در این صورت، علاوه بر مشکلات مربوط به انتقال اطلاعات از فایل قدیمی به فایلی با ساختار جدید،برنامه نویس مجبور خواهد بود کلیه ی برنامه هایی که ه نحوی به فایل قدیمی به فایلی با ساختار جدید، برنامه نویس مجبور خواهد بود کلیه ی برنامه هایی که به نحوی به فایل دانشجویان مربوط می شوند را نیز تغییر دهد. در واقع، وابستگی ساختاری به "لزوم تغییر کد برنامه های مربوط به یک فایل پس از اعمال هر تغییر در ساختار فایل (اضافه کردن یا حذف فیلد)" اطلاق می شود.
  • ناسازگاری داده ها: به دلیل عدم یکپارچگی در اطلاعات در هنگام عملیات درج، حذف و ویرایش ممکن است اطلاعات یک جدول مشترک در قسمت های مختلف با هم ناسازگار باشد. یعنی ممکن است اطلاعاتی در یک جدول اضافه شود ولی در جداول مشترک اضافه نشود.
  • عدم یکپارچگی
سیستم های پایگاه داده:

به علت مشکلاتی که سیستم فایل در ذخیره سازی اطلاعات داشتند،  به تدریج سیستم های پایگاه داده ها (بانک اطلاعاتی ) به وجود آورند. در سیستم های پایگاه داده کلیه ی اطلاعات به صورت یکپارچه و متمرکز در یک نقطه ذخیره می شوند. در این گونه سیستم ها کاربر به صورت مستقیم با داده ها کار نمی کند و از واسطی به نام DBMS (Data Base Management System) استفاده می شود. کاربر فرامین خود را در قالب یک دستور سطح بالا به DBMS ارسال می کند DBMS دستور کاربر داده ها اعمال کرده و نتایج مجددا به کاربر ارسال می شود.

اجزاء یک سیستم پایگاه داده ها:

یک سیستم پایگاه داده شامل اجزاء ذیل است:
  1. سخت افزار : سخت افزار یک سیستم پایگاه  داده ها شامل کلیه ی وسایل فیزیکی است که برای ورود/خروج(I/O) و ذخیره ی اطلاعات بکار می روند. به عبارت ساده تر ، سخت افزار یک سیستم پایگاه داده ها شامل کامپیوتر های مورد استفاده در محیط می باشد. در صورتی که از پایگاه داده ها در یک محیط شبکه ای استفاده در محیط می باشد. در صورتی که از پایگاه داده ها در یک محیط شبکه ای استفاده شود، کلیه ی تجهیزات مربوط به شبکه نیز جزء سخت افزار پایگاه داده ها محسوب می شوند.
  2. نرم افزار : در سیستمهای پایگاه داده ها از سه نوع نرم  افزار استفاده می شود:
  • سیستم عامل: مسلما قبل از نصب نرم افزار DBMS لازم است روی کلیه ی کامپیوتر های محیط پایگاه داده ها یک سیستم عامل مثل ویندوز یا UNIX یا ...نصب شود.
  • DBMS: DBMS یک نرم افزار از پیش تهیه شده و پیچیده است که برنامه نویسان و طراحان هیچگونه دخل و تصرفی در عملکرد آن ندارند بلکه نسخه های مختلف آن را خریداری کرده، بر روی کامپیوتر های محیط مورد نظر نصب کرده و از امکانات آن برای ایجاد پایگاه داده ها ،پشتیبانی پایگاه داده ها و انجام عملیات گوناگون روی داده ها استفاده می کنند. Oracle،DB2،SQL SERVERو  Informixاز معروفترین-DBMSهای کنونی هستند.
  • برنامه های کاربردی: برنامه های کاربردی برنامه هایی هستند که توسط برنامه نویسان و مخصوص یک محیط عملیاتی نوشته می شوند مثل برنامه های حسابداری، برنامه های حقوق و دستمزد و ... این برنامه ها از طریقDBMS با پایگاه داده ها ارتباط برقرار کرده، اطلاعات موجود در آن را مورد دستکاری قرار داده و یابر اساس اطلاعات موجود در پایگاه داده ها گزارشاتی تهیه می کنند.
3-  کاربران: کاربران سیستمهای پایگاه داده ها را می توان به پنج دسته ی اصلی تقسیم کرد:
  • مدیران سیستم: این گروه از کاربران بر عملکرد کلی سیستم پایگاه داده ها نظارت می کنند.
  • مدیران پایگاه داده ها یا DBA-ها: این دسته از مدیران که نقش مهمی در سیستمهای پایگاه داده ها ایفا می کنند، استفاده ی بهینه و درست و کارآمد از پایگاه داده ها را موردبررسی قرار می دهند. در واقع، DBA-ها خط مشی و سیاستهای کلی استفاده و کار با پایگاه داده ها را مشخص می کنند مثلا تعیین می کنند که از چه DBMS –یی استفاده شود و یا چگونه نسخه های جدید DBMSدر محیط پایگاه داده ها نصب شوند و یا برای بهینه سازی کارآیی پایگاه داده ها از چه استانداردها و مکانیزمهایی استفاده شود.
  • طراحان پایگاه  دادهها: این دسته از کاربران، در واقع معماران پایگاه داده ها هستند. این گروه از کاربران، پایگاه داده ها را مطابق با خواسته های مدیران پایگاه داده ها و بر اساس نیازهای کلیه ی کاربران نهایی طراحی می کنند.
  • برنامه نویسان: برنامه نویسان،برنامه های کاربردی لازم برای کار با پایگاه داده ها را مطابق با نیازمندیهای کاربران طراحی و پیاده سازی می کنند. در واقع وظیفه ی آنها طراحی و ایجاد صفحات ورود داده ها و گزارشات مورد نیاز کاربران نهایی و همچنین، پروسجرهایی است که کاربران نهایی از آنها برای دسترسی به داده ها و دستکاری آنها استفاده می کنند.
  • کاربران نهایی :کاربران نهایی اپراتورها و مدیران سازمانها هستند. این دسته از کاربران، اطلاعات زیادی در مورد پایگاه داده ها و یا برنامه نویسی ندارند و تنها برای انجام امور مربوط به خود و استفاده از برنامه های کاربردی نوشته شده توسط برنامه نویسان آموزش می بینند.
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 قرار می دهد تا به راحتی پایگاه داده های مورد نظر خود را ایجاد، پیاده سازی و پشتیبانی کرده، بر عملکرد آن نظارت کنند.

شکل زیر یک سیستم فایل را با سیستم پایگاه داده ها مقایسه می کند:
سیستم فایل

سیستم پایگاه داده ها

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

 
در هربرنامه ی کاربردی که با پایگاه داده ها سر و کار دارد از دو دسته زبان استفاده می شود:
  1. زبان فرعی داده ای یا DSL
  2. زبان میزبان یا HL
زبان فرعی داده ای DSL: از دستورات زبان فرعی داده ای برای کار با داده ها استفاده می شود.این دستورات به سه دسته تقسیم می شوند:
زبان تعریف داده ها یا DDL: این نوع دستورات برای تعریف اشیاء موجود در پایگاه داده استفاده می شود مانند ساخت جداول، ساخت Index و...........
زبان دستکاری داده ها یاDML:از این دستورات برای بازیابی ، درج، حذف و اصلاح اطلاعات جداول استفاده می شود. مانند دستوراتSelect،update ،Insert Delete.
زبان دستکاری داده ها یاDCL: این دستورات جهت کنترل و مدیریت در سطح پایگاه ها کاربرد دارد. مثل تعیین سطح دسترسی برای هر کاربر.

زبان میزبان یا HL: به علت اینکه زبانهای DSL تمامی نیازهای یک سیستم اطلاعاتی را مهیا نمی کند،نیاز به زبان میزبان یا HL می باشد در زبان میزبان یا HL معمولا می توان با دستورات شرطی و حلقه ها مدیریت بهتری بر روی اطلاعات انجام داد.


  می پسندم 3     0  3 
 
 
تعداد پسند های ( 3 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
پنجشنبه ۳۰ خرداد ۱۳۹۲ ۱۲:۰۵ قبل از ظهر نمایش پست [2]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من



مدلهای پایگاه داده:
  1. مدل سلسله مراتبی
  2. مدل شبکه ای
  3. مدل رابطه ای
از آنجا که مدلهای پایگاه داده های سلسله مراتبی و شبکه ای در سالهای اخیر محبوبیت خود را به علت پیچیدگیها و معایبی که این مدلها دارند کم شده است و در حال حاضر پایگاه داده های رابطه ای رایجترین پایگاه داده های مورد استفاده  هستند در اینجا مفاهیم موجود در پایگاه داده های رابطه ای و قوانین حاکم بر آنها توضیح داده خواهد شد.

مفاهیم پایگاه داده های رابطه ی:
هر پایگاه داده ی رابطه ای ، مجموعه ای محدود از جداول یا رابطه هاست.

جدول یا رابطه: هر جدول یا رابطه، ساختاری دو بعدی شامل سطرها و ستونهاست. پایگاه داده های رابطه ای برای هر نوع موجودیت یا رابطه میان موجودیتهای یک جدول در نظر گرفته می شود. مثلا برای موجودیت دانشجو یک جدول و برای رابطه ی ثبت نام(رابطه ی میان  درس و دانشجو) یک جدول در نظر گرفته می شود. هر سطر جدول نمایانگر یک موجودیت یا رابطهی خاص است مثلا هر سطر از جدول دانشجو، یک دانشجوی خاص را توصیف می کند و یا هر سطر از جدول ثبت نام، ثبت نام یک دانشجوی مشخص در یک درس مشخص در طول یک ترم مشخص را نشان می دهد.
ویژگی: هر یک از ستونها یک جدول نمایانگر یکی از ویژگیهای نوع موجودیت است. مثلا جدول دانشجو می تواند شامل ستونهای st# (شماره دانشجویی)، name(نام دانشجو) وcourse (رشته ی تحصیلی ) دانشجو باشد.

                      جدول دانشجو(                            ( Student                                   
course name st#
کامپیوتر آرش راد 7801
هنر مینا رضایی 7902
برق علی راد 8001
هنر فرزانه رسولی 8002
 
تاپل: هر سطر از جدول را یک تاپل نامند. مثلا در جدول 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 نیست ؟

کلید کاندید: سوپر کلیدی است که قابل تجزیه شدن نباشد.
به عنوان مثال:

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

به عنوان مثال جدول زیر را در نظر بگیرید:

 
نام نام خانوادگی رشته
علی کریمی الکترونیک
محمد قاسمی کامپیوتر
علی کریمی کامپیوتر
 
چون جدول کلید اصلی ندارد،اگر بخواهیم علی کریمی را پاک کنیم، با مشکل مواجه خواهیم شد. ولی اگر شماره دانشجویی را داشته باشیم و آن را به عنوان کلید اصلی در نظر بگیریم، می توانیم به راحتی نام مورد نظر را پاک کنیم.
 
نام نام خانوادگی رشته شماره دانشجویی(کلید اصلی)
علی کریمی الکترونیک 21
محمد قاسمی کامپیوتر 48
علی کریمی کامپیوتر 15
 
 
کلید خارجی: اگر ویژگی 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 
 
 
تعداد پسند های ( 2 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
دوشنبه ۳ تیر ۱۳۹۲ ۰۳:۳۰ بعد از ظهر نمایش پست [3]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 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شهریه ی ثابت
برای درک بهتر مسئله به نمونه هایی از اطلاعات ذخیره شده در پایگاه اده ها توجه کنید:







  1.  برای هر جدول کلیه ی وابستگیهای  تابعی و وابستگیهای تابعی کامل را مشخص کنید.
  2. کلید اصلی هر جدول را مشخص کنید
  3. برای هر جدول کلیدهای خارجی را مشخص کنید(در صورت وجود)


  می پسندم 2     0  2 
 
 
تعداد پسند های ( 2 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
یکشنبه ۹ تیر ۱۳۹۲ ۱۱:۲۱ بعد از ظهر نمایش پست [4]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من



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

  1. عملگرهای یکتایی : ورودی این عملگرها تنها یک جدول است. این عملگر عبارتند از :عملگر انتخاب یا select)، عملگر پرتو(یاproject)،عمگر بسط (Extend)،عملگر گروه بندی یا خلاصه سازی (Summarize)
  2. عملگرهای دوتایی که روی دو جدول سازگار اعمال می شوند: تنها دو جدول سازگار می توانند ورودی این عملگرها باشند. این عملگرها عبارتند از اجتماع(Union) ،اشتراک(یاIntersect ) و تفاضل( یا Subtract)
  3. عملگر های دوتایی که روی دو جدول دلخواه اعمال می شوند: هر دو جدول دلخواه می توانند ورودی این عملگرها باشند. این عملگرها عبارتند از ضرب(× یا (Productباشند. و انواع مختلف پیوند(join)
  4. عملگر تقسیم(÷ یاdivide): این عملکر روی دو جدول با شرایط خاص اعمال می شود
  5. عملگر جایگزین()
تذکر: در جبر رابطه ای ورودی و خروجی کلیه ی عملگر از نوع جدول می باشد.
در این آموزش عملگرهای جبر رابطه ای را مورد بررسی قرار می دهیم. در اغلب مثالها از جداول یک پایگاه داده شاما جداول ذیل می باشد:


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 =' 
یا
'تهران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 
 
 
تعداد پسند های ( 4 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
سه شنبه ۱۱ تیر ۱۳۹۲ ۱۰:۰۵ بعد از ظهر نمایش پست [5]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من




عملگرهای اجتماع، اشتراک و تفاضل

عملگرهای اجتماع و اشتراک و تفاضل تنها روی جداول سازگار قابل اعمال هستند. جداول سازگار جداولی هستند که تعداد ویژگیها و دامنه ی ویژگیهای متناظر آنها یکسان باشد. جداول T1و T2 را در نظر بگیرید:
مجموعه عنوان دو جدول یکسان است. هنگامی که دامنه ی ویژگیها نیز نظیر به نظیر یکسان باشند، می گوییم دو جدول سازگازند.

عملگر اجتماع: اجتماع دو جدول سازگار جدولی خواهد بود که مجموعه ی عنوان آن با مجموعه ی عنوان دو جدول یکسان است و بدنه ی آن شامل تاپلها ی هر دو جدول می باشد(تاپلهای تکراری حذف می شوند). برای عملگر اجتماع از نماد U یا union استفاده می شود.
مثال1:T1 U T2 را بدست آورید.

 
مثال2:نام شهرهایی را بیابید که تولید کننده ای در آنها زندگی می کند یا پرژه ای در آنها حال اجرا ست.
کافیست اجتماع ستون 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 را بدست آورید.
مثال 2: نام شهرهایی را بیابید که  هم  تولید کننده ای در آنها زندگی می کند و هم پروژه ای در آنها در حال اجرا است.
کافیست اشتراک ستون 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 
 
 
تعداد پسند های ( 2 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
پنجشنبه ۱۳ تیر ۱۳۹۲ ۰۳:۲۸ قبل از ظهر نمایش پست [6]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 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

عملگر پیوند شرطی دارای خاصیت جابجایی است ولی شرکت پذیری ندارد. به عبارت دیگر:
 
R1R2 R2R1
شرط         شرط    

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 
 
 
تعداد پسند های ( 3 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
شنبه ۱۵ تیر ۱۳۹۲ ۰۱:۰۲ قبل از ظهر نمایش پست [7]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 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 
 
 
تعداد پسند های ( 3 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
شنبه ۲۲ تیر ۱۳۹۲ ۰۴:۲۴ بعد از ظهر نمایش پست [8]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من



زبان پرس و جوی ساخت یافته(SQL)

همانطور که  قبلا نیز به آن اشاره شد، هر کاربر یا برنامه ی کاربردی برای ارتباط با پایگاه داده ها یک زبان فرعی داده ای استفاده می کند. SQL معروفترین زبان فرعی داده ای است که توسط  کلیه ی DBMS-های کنونی دنیا شامل  SQL SERVER،Oracle، DB2،Informix  و ....پشتیبانی میشود.به عبارت دیگر برای نوشتن اغلب برنامه های کاربردی اعم از برنامه های حسابداری ، حقوق و دستمزد، انبارداری ، سایتهای وب که با پایگاه  داده ها سر و کار دارندو...فارغ از زبان برنامه نویسی و همچنین DBMS مورد استفاده ، استفاده از زبان SQL الزامی است. دستورات SQL همانند هر زبان فرعی داده ای دیگر به سه گروه تقسیم می شوند:
  • دستورات تعریف داده یا DDL
  • دستورات دستکاری داده ها یا DML
  • دستورات کنترل داده ها یا DCL
دستورات تعریف داده یا 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       modify  (sname nchar(20) not null  unique     
 
حذف یک جدول
قالب کلی این دستور به شکل ذیل است:
 نام جدول   drop table
مثال:جدول S را حذف کنید.
drop table  S


  می پسندم 2     0  2 
 
 
تعداد پسند های ( 2 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
جمعه ۲۸ تیر ۱۳۹۲ ۰۱:۴۷ بعد از ظهر نمایش پست [9]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 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 
 
 
تعداد پسند های ( 4 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
سه شنبه ۸ امرداد ۱۳۹۲ ۰۳:۰۳ بعد از ظهر نمایش پست [10]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من



 
عملگرهای in  و not in   : از عملگرهای  in  و not in برای تست وجود یا عدم یک مقدار در داخل یک مجموعه استفاده می شود.
مثال: مشخصات فروشهای مربوط به محصولات
'p2' و'p3' و  'p4' را بیابید.
روش اول:
Select    *
From     SPJ

Where   P#='p2'     or     P#='p3'   or    P#='p4'
روش 2: استفاده از عملگر in
Select    *
From     SPJ

Where    P#    in   ('p2','p3' , 'p4')
خروجی این پرس و جو به شکل ذیل خواهد بود:


مثال: مشخصات فروشهای را بیابید که مربوط به محصولات  'p2'یا   'p3'یا 'p4' نیستند.
 روش1:
Select    *
From     SPJ

Where   P#<>'p2'     and     P#<>'p3'   and   P#<>'p4'
روش 2: استفاده از عملگر not in
Select    *
From     SPJ

Where  P#   not in   ('p2','p3' , 'p4')
 
خروجی این پرس و جو به شکل ذیل خواهد بود:




  می پسندم 2     0  2 
 
 
تعداد پسند های ( 2 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
پنجشنبه ۱۰ امرداد ۱۳۹۲ ۱۱:۴۳ بعد از ظهر نمایش پست [11]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 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 
 
 
تعداد پسند های ( 3 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !

اطلاعات نویسنده
اصول و مفاهیم پایگاه داده
دوشنبه ۱۴ امرداد ۱۳۹۲ ۰۲:۳۳ قبل از ظهر نمایش پست [12]
مدیر انجمن
rating
شماره عضویت : 44
حالت :
ارسال ها : 2792
جنسیت :
تعداد بازدیدکنندگان : 773
دعوت شدگان : 12
اعتبار کاربر : 21876
پسند ها : 2658
حالت من :  Ashegh.gif
تصویر مورد علاقه من : images/mms/yaran (9).jpg
تشکر شده : 3464
وبسایت من : وبسایت من



تابع sum : از تابع sum برای محاسبه ی  مجموع مقادیر یک ستون استفاده می شود
مثال: میزان کل فروش 'P1' را بیابید.
 برای این کار کافیست  مجموع مقادیر  ستون qty را در فروشهای مربوط به'P1' محاسبه کنیم:
Select    sum(qty)
From     SPJ
   
Where     P#='P1'
خروجی این پرس و جو به شکل ذیل خواهد بود:


  می پسندم 4     0  4 
 
 
تعداد پسند های ( 4 ) از این کاربر
تعداد آنلایک ها ( 0 ) از این کاربر

















امضای کاربر : programmer
 عازم يک سفرم ، سفری دور به جايی نزديک
سفری از خود من تا به خودم
مدتی هست نگاهم به تماشای خداست و اميدم به خداوندی اوست …





گزارش پست !


امکان افزودن پاسخ به این موضوع وجود ندارد امکان افزودن موضوع در این بخش وجود ندارد
صفحه 1 از 3 < 1 2 3 > آخرین »



برچسب ها
اصول ، مفاهیم ، پایگاه ، داده ،

« ...خالی... | آموزش برنامه نویسی c#.NET »

 











انجمن یاران منتظر

چت روم یاران منتظر

چت روم و انجمن مذهبی امام زمان



هم اکنون 03:20 پیش از ظهر