ارسال پاسخ 
 
رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مقدمه ای بر پایگاه داده
16-06-2007, 08:47 PM
ارسال: #1
مقدمه ای بر پایگاه داده
مقدمه ای بر پایگاه داده ها
پیشرفت سریع علم کامپیوتر و کاربرد وسیعی که این تکنولوژی در کلیه امور زندگی بشر دارد از یک سو و حجم زیاد اطلاعات و نیاز بشر به سرعت، قدرت و انسجام اطلاعات از سوی دیگر، موجب گردید تا اینجا بانکهای اطلاعاتی به عنوان یکی از موضوعات اساسی و مهم جامعه بشری مطرح شود. بانک اطلاعاتی با ساختار خاص خود، ذخیره ساختن اطلاعات را به راحتی ممکن ساخته و کاربران مجاز نیز به سادگی به اطلاعات دسترسی می یابند. در این فصل سعی داریم شما را با مفهوم بانک اطلاعاتی سیستم مدیریت بانک اطلاعاتی و فواید استفاده از این سیستم ها آشنا سازیم.
داده (Data) و اطلاعات(Information)
دو اصطلاح داده و اطلاعات که بیشتر اوقات به جای یکدیگر به کار برده می شوند در سیستم های اطلاعاتی عبارتند از : کلمات و ارزشهای واقعی که از طریق مشاهده و تحقیق به دست می آید در حالیکه اطلاعات داده های پردازش شده می باشند که برای گیرنده قابل درک بوده و با دانستن آن شروع به تصمیم گیری می کند. به عبارت دیگر داده نمودی از وقایع، معلومات، رخدادها، پدیده ها و مفاهیم می باشد در حالیکه اطلاعات حاصل تکوین و پردازش یا تفسیر داده بوده و شامل خواص ارتباط دهندگی و انتقال دهندگی می باشد.
موجودیت (Entity)
موجودیت مصداق کلی هر پدیده، فرد یا شی ء یا مفهومی است که می خواهیم در مورد آن اطلاعاتی داشته باشیم به عنوان مثال اگر در نظر داریم یک سیستم پایگاه داده برای یک دبیرستان پیاده کنیم مواردی چون دانش آموزان، دبیران، دروس، کلاسها و... جزء موجودیت های سیستم به شمار می روند.

صفت خاصه (tr¡buteAt)
هر موجودیت از یک سری صفات تشکیل شده است که دارای مقادیر واقعی هستند و به عبارتی وجه تمایز یک موجودیت از موجودیت دیگر به شمار می رود. به عنوان مثال در سیستم دانشگاه اگر موجودیت دانشجو را در نظر بگیریم می توانیم صفات خاصه: نام، نام خانوادگی، سن، سال تولد، رشته تحصیلی، سال ورود و... را برگزینیم و یا برای موجودیت درس :
نوع موجودیت: درس
صفات خاصه: کد درس، نام درس، تعداد واحد
ایجاد سیستم خودکار ذخیره و بازیابی داده ها
دو روش کلی برای ذخیره ساختن و بازیابی خودکار داده ها وجود دارد :
روش استفاده از سیستم های اطلاعاتی ساده یا روش غیر بانک اطلاعاتی-1
2- روش استفاده از بانکهای اطلاعاتی
روش غیر بانک اطلاعاتی
در این روش، داده ها در فایلهای جداگانه قرار می گیرند و برای استفاده از داده های موجود در ان فایلها، سیستم های جداگانه ای طراحی می شوند. به این نوع سیستم ها سیستم پردازش فایل (system-File) گفته می شود. در این سیستم ها هر برنامه ی کاربردی به فایل اطلاعاتی مربوط به خود مراجعه می کند.
کاربر1 برنامه کاربردی1 فایل1
کاربر2 برنامه کاربردی2 فایل2
کاربر3 برنامه کاربردی3 فایل3
در این روش بسیاری از داده های مورد نیاز کاربر 1 در بین داده ها ی در اختیار 2 و3 وجود دارد و در نتیجه عدم تجمع داده ها و عدم وحدت ذخیره سازی اطلاعات در یک فایل ایجاد مشکل می نماید و در صورت تکرار اطلاعات مورد نیاز کاربر 1 در فایل1 با تکرار ذخیره سازی اطلاعات روبرو هستیم و این به معنی افزونگی داده است. از طرفی حفظ امنیت این سیستم مشکل در صورت ایجاد تغییراتی در فایل 1 در زمینه اطلاعات موجود در آن، برنامه کاربردی مربوط نیز باید تغییر پیدا کند.
روش بانک اطلاعاتی
در این روش کلیه داده ها به صورت مجتمع یا بانک ذخیره شده ولی هر کاربر دید خاص خود را نسبت به داده ها دارد. در این صورت کاربران مختلف می توانند به صورت مشترک با بانک کار کنند همچنین افزونگی داده ها به حداقل ممکن کاهش می یابد.
در این روش نرم افزار مدیریت بانک اطلاعاتی (DBMS) به عنوان واسطه بین برنامه های کاربردی و بانک اطلاعاتی ایفای نقش می کند لذا امنیت داده ها در این روش بیشتر است.
برنامه کاربردی1 برنامه کاربردی1
برنامه کاربردی 2 برنامه کاربردی 2 DBMS فایل
برنامه کاربردی3 برنامه کاربردی 3
تعریف بانک اطلاعاتی( Base Data)
به صورت جامع می توان گفت: " بانک اطلاعاتی یا پایگاه داده ها مجموعه ای سازمان یافته از اطلاعات و داده های مرتبط به هم است" و در یک تعریف کاملتر بانک اطلاعاتی عبارت است از " مجموعه ای از داده های ذخیره شده به صورت مجتمع و مبتنی بر یک ساختار ، با حداقل افزونگی، تحت کنترل متمرکز که استفاده از آن به صورت اشتراکی و همزمان نیز میسر می باشد."
*مجتمع و مبتنی بر یک ساختار بدین معنی است که کل داده های عملیاتی محیط مورد نظر در یک ساختار مشخص به صورت یکجا ذخیره شده باشند و لازمه ی هر تجمعی وجود یک ساختار است.
* منظور از عدم افزونگی در یک تعبیر ساده به حداقل رساندن ذخیره داده های تکراری و بهینه سازی استفاده از محیط های ذخیره اطلاعات می باشد.
سیستم مدیریت بانک اطلاعات(DBMS)
DBMS مهمترین جزء نرم افزاری در سیستم بانک اطلاعاتی است که به عنوان رابط بین بانک اطلاعاتی و کاربر عمل می نماید، به طوریکه کلیه فایلهای بانک اطلاعاتی فقط در اختیار این نرم افزرا قدرتمند قرار گرفته و کلیه دستیابی به بانک از طریق
DBMS صورت می پذیرد.
آنچه در مورد یک سیستم مدیریت بانک اطلاعاتی اتفاق می افتد عبارت است از :
1-کاربر با استفاده از بعضی زیر زبان داده ها مانند SQL ( که به تفضیل در فصل های آتی به آن اشاره خواهد شد) درخواست یک دسترسی می نماید.
2- DBMS درخواست مورد نظر را دریافت و آن را تحلیل می کند.
3- DBMS به ترتیب دید کاربر از داده های ذخیره شده و حفظ امنیت داده در محیط بانک اطلاعاتی را بازرسی و مرور می کند. ( کنترل امنیت و جامعیت داده ها)
4- DBMS عملکردهای لازم را برای داده های ذخیره شده اجرا می کند.
برای درک بیشتر موارد فوق به شکل مراجعه کنید:
برنامه های کاربران DBMS سیستم عامل فایل ها و داده ها
محیط DBMS
اجزاء اصلی سیستم بانک اطلاعاتی عبارتند از :
داده ها، سخت افزارها، نرم افزارها و کاربران که اینجا به تشریح آنها خواهیم پرداخت.
داده ها (Data)
داده که قبلاً به آن اشاره گردید از مهمترین اجزاء DBMS می باشد. مجتمع و اشتراکی بودن داده ها به عنوان مزایای اصلی سیستم پایگاه داده ها در محیط های بزرگ به شمار می رود.
سخت افزار (Hardware)
سخت افزار مورد نیاز DBMS معمولاً عبارتند از :
1- سخت افزار ذخیره سازی داده: در عملیات ذخیره سازی داده ها در محیط های بانک اطلاعاتی از دیسکهای سریع و با ظرفیت بالا استفاده می شود.
2-سخت افزار پردازنده ی مرکزی : با پیشرفت فناوری انفورماتیک، سیستم هایی به بازار عرضه شده اند که از نظر معماری پردازنده مرکزی، حافظه اصلی و سایر قسمتها از پیکربندی ویژه ای جهت ذخیره و بازاریابی اطلاعات برخوردارند و به لحاظ
این ویژگیها کاربرد بیشتری در محیطهای بانک اطلاعاتی خواهند داشت.
3-سخت افزار ارتباطی: مجموعه امکانات سخت افزاری که برای برقراری ارتباط بین کامپیوتر ها و دستگاهها جانبی و همچنین مابین چندین کامپیوتر (به صورت شبکه ای) استفاده می شوند را تحت عنوان سخت افزارهای ارتباطی بانکهای اطلاعاتی می شناسند.

نرم افزار (Sofware)
نرم افزار شامل خود DBMS و برنامه های کاربردی، سیستم عامل و نیز نرم افزارهای شبکه ای است. برای استفاده DBMS در محیط شبکه عمدتاً از برنامه های کاربردی نوشته شده به زبانهای برنامه نویسی نسل سوم مانند C، کوبول، پاسگال و ... و یا زبانهای نسل چهارم مانند SQL استفاده می شود. هدف نرم افزارهای DBMS ارائه چهار ابزار اصلی است که عبارتند از :
1- زبانهای پرس و جو ( Language Query)
2-گزارش ها (Report)
3- فرم ها (Forms)
4- تصاویر (Graphics)
کاربران (Users)
کاربران یا کسانی که به نحوی با سیستم در ارتباط هستند به چهار دسته مهم تقسیم می شوند :
1- مدیران بانک اطلاعاتی یا DBA
2- طراحان بانک اطلاعاتی یا DBA
3- برنامه نویسان بانک اطلاعاتی یا DBP
4- کاربران نهایی یا استفاده کنندگان سیستم ( Users End)



اصول معماری سیستم های بانک اطلاعاتی
با توجه به گفته های بالا در می یابیم که سیستم بانک اطلاعاتی، سیستمی چند سطحی است. این سیستم(سیستم بانک اطلاعاتی) بوسیله امکانات سیستم مدیریت بانک اطلاعاتی ایجاد شده و در اختیار کاربران قرار می گیرد. در نظر داشته یاشید که این سیستم چند سطحی دارای یک معماری خاص می باشد که بیانگر نحوه تعریف داده ها در سطوح مورد نظر است.
این شکل مدلی از این معماری را نشان می دهد :
سطح کاربران تعریف داده ها
................................................................................​............................
سطح طراح بانک اطلاعاتی تعریف داده ها
................................................................................​...........................
سطح فایلینگ تعریف فایل ها
................................................................................​............................
سطح فیزیکی

وظایف DBMS
وظایف سیستم مدیریت بانک اطلاعاتی بستگی به نوع کاربران آن دارد این وظایف در چارچوب واحدهای نرم افزاری (برنامه ها) طراحی و پیاده سازی می شوند.
هرچند وظایف DBMS در سیستم های مختلف تا حدو در متفاوت است، اما به طور کلی این وظایف عبارتند از :
* تعریف داده ها
* تأمین امکان دستکاری داده ها
* ایجاد دیکشنری داده ها
* کنترل امنیت و جامعیت جاده ها
* ایجاد امکان بازیابی از بانک اطلاعاتی
* بهنگام سازی داده ها
* تأمین امکان کنترل کارایی
* تأمین تسهیلاتی برای کاربران به منظور توسعه سیستم

برای انجام این وظایف می بایست واحدهای نرم افزاری مربوط در سیستم مدیریت بانک اطلاعاتی وجود داشته یاشد. هرکدام از این واحدها ممکن است مرکب از چند واحد کوچکتر باشند. توجه داشته باشید که هر سیستم نیازمند یک بخش کنترلی است. درسیستم مدیریت بانک اطلاعاتی،مجموعه
واحدهایی که وظایف کنترلی را بر عهده دارند اصطلاحاً به سیستم کنترل بانک اطلاعاتی معروف می باشند. به طور کلی واحدهای زیر در سیستم کنترل بانک اطلاعاتی وجود دارند :
* واحد نظارت بر اجرای برنامه کاربر
* واحد کامپایل کننده احکام و درخواست ها
* واحد دستیابی به بانک فیزیکی
* واحد ثبت رویدادها و تغییراتی که در بانک ایجاد می شوند.
زبان تعریف داده ها DDL
همانطور که اشاره شد تعریف داده ها یکی از وظایف DBMS است. DDL از زبانهای فرعی داده ای جهت تعریف داده ها است که از آن جهت تعریف صفات مشخصه و خصوصیات یک بانک استفاده می شود. ساختار رکوردها، تعریف فیلدها، محل فایلها و شیوه ی ذخیره سازی داده ها در بانک به وسیله احکام DDL انجام می پذیرد.

زبان پردازش و مدیریت داده ها DML
تأمین امکان دستکاری داده هانیز از وظایفDBMS عنوان شد. زبان دستکاری،
پردازش و مدیریت بانک اطلاعاتی به زبانی گفته می شود که برای درج داده ها، بروز رسانی آنها و اجرای پرس و جو از یک بانک اطلاعاتی مورد استفاده قرار می گیرد. این زبانها اغبل قابلیت انجام محاسبات ریاضی و آماری می باشند که به وسیله آنها عملیات گزارش گیری از بانک اطلاعاتی آسانتر خواهد شد.
دیکشنری داده ها
یکی دیگر از وظایف DBMS، ایجاد دیکشنری یا فرهنگ داده است. دیکشنری داده ها یکی از امکاناتی است که در محیط های بانک اطلاعاتی در اختیار اداره کنندگان بانک قرار می گیرد. دیکشنری داده ها که به آن راهنمای سیستم نیز می گویند در واقع بانکی در مورد خود بانک و داده های ذخیره شده در آن است. به طور کلی اطلاعات و محتوای دیکشنری داده ها به شرح زیر است :
* شرح ساختار و پیکر بندی فیزیکی بانک
* تاریخ ایجاد داده ها
* مکانیسم ورود داده ها به بانک
* ارتباط بین برنامه های کاربردی و داده ها
* مشخصات کاربران و چگونگی حق دستیابی آنها.
آشنایی با جداول و اجزاء تشکیل دهنده آنها در بانک های اطلاعاتی
جدول مهمترین ساختار داده ای در سیستم بانک های اطلاعاتی رابطه ای است(درادامه این فصل به تشریح سیستم های رابطه ای خواهیم پرداخت )
جدول در سیستم رابطه ای تشکیل شده از چندین سطر و ستون می باشد که مقادیر داده در هر سطر و ستون در طول زمان متغیر خواهد بود. به طور کلی جداول ساختار بنیادین رابطه ها هستند. سطرهای موجود در جداول را "رکورد" و ستونهای آن را "فیلد" می نامند.
رکورد
رکورد یک ساختار داده ای متشکل از مجموعه فیلدهاست که هر یک از این فیلدها نام و نوع خاص خود را دارند. برخلاف یک آرایه که تمام عناصر آن نمایانگر انواع یکسانی از اطلاعات هستند و دستیابی به آنها با یک شاخص( ایندکس) انجام می شود، عناصر یک رکحورد نمایانگر انواع مختلفی از اطلاعات می باشد که به وسیله نامشان مورد دستیابی قرار می گیرند.
فیلد
فیلد محلی است در یک رکورد که نوع خاصی از داده ها در آن ذخیره می شود. به عنوان مثال چنانچه قرار باشد برای ذخیره سازی اطلاعات کارمندان یک سازمان از جداول استفاده می شود، رکورد این جداول ممکن است فیلدهایی برای ذخیره سازی نام خانوادگی، نام، نشانی، مدرک تحصیلی و... داشته باشند. فیلدها بوسیله بیشینه طول و نوع داده هایشان( کاراکتری، عددی، تاریخی و...) از یکدیگر تمیز داده می شوند.
توجه داشته باشید که امکان تعریف این مشخصات معمولاً در زبان تعریف داده ها (DDL) قرار دارد.
آشنایی با روشهای ارتباط و مدلهای بانک های اطلاعانی
سه مدل داده ای برای سیستم های بانک اطلاعاتی وجود دارد. لازمه هر مدل داده ای وجود یک ساختار داده ای است که علاوه بر مدل داده عناصر دیگری را نیز دربردارد. عناصر مدل داده ای عبارت است از ساختار داده ای، عملگرهای عمل کننده روی ساختار و قواعد عام برای تأمین جامعیت می باشند. در ادامه این بحث قصد داریم مدلهای موجود را مورد مطالعه قرار دهیم. از آنجا که بانک اطلاعاتی اوراکل مبتنی بر مدل رابطه ای است، لذا بیشتر بحث خود را بر مدل رابطه ای معطوف می داریم.
مدل سلسله مراتبی
این ساختار، قدیمی ترین مدل برای طراحی بانک های اطلاعاتی است. در این ساختار، داده ها و ارتباط بین آنها به کمک یک درختواره نمایش داده می شوند. درختواره گرافی است دارای یک ریشه و N گره که در حالت بسته و غیر چرخشی قرار دارد. منظور از حالت بسته این است که بین هر دو گره پیوندی وجود دارد که یک مسشیر منطقی را از گرهی به گره دیگر تأمین می کند و همیشه از سطح بالاتر به سطح پایین تر است. غیرچرخشی نیز یعنی مسیری از گره سطح پایین تر به گره سطح بالاتر وجود ندارد. هر گره از هر سطح می تواند تعدادی گره وابسته یا فرزند از سطح پایین تر داشته باشد. به این گره، گره پدر می گویند. پس هر گره پدر می تواند چندین گره فرزند داشته باشد ولی هر گره فرزند فقط یک گره پدر دارد. هر گره درختواره می تواند رکوردی حاوی یک نوع موجودیت باشد .
از آنجا که ریشه سلسله مراتب ، نقطه ورود به ساختار بوده و مسیر منطقی از سمت بالاتر به سمت پایین تر است، برای عملیات بازیابی، علاوه بر دستیابی به ریشه، امکان دستیابی به فرزند نیز باید وجود داشته باشد. در بحث ذخیره سازی نیز این سیستم دارای اشکال است.
مدل شبکه ای
در این ساختار موجودیت ها به کمک انواع رکوردها، و ارتباطات به کمک پیوندهای بین رکوردها نمایش داده می شوند.
چنانچه خواسته باشیم این ساختا را با مفاهیم موجود در درختواره توضیح بدهیم باید گفت که در این ساختار،هر گره فرزند می تواند بیش از یک گره پدر داشته باشد. بنابراین به کمک این ساختار می توان ارتباطات یک به چند را نیز نمایش داد.
مدل شبکه ای پیچیده تر از مدل سلسله مراتبی است و به همان نسبت عملیات ذخیره و بازیابی پیچیده تری دارد.
مدل رابطه ای
پایگاه داده ای رابطه ای از دید کاربران یک مجموعه از جدولهایی است که به درستی قابل درک می باشند.4 مفهوم اساسی در این مدل به شرح زیر وجود دارد:
1-جدول 2- ستونها 3- ردیفها 4-فیلدها
این مدل داده ها را در روابط (جداول) سازماندهی نموده و اقوانین ریاضی تبعیت می کند.صفات خاصه موجودیت در یک سیستم به عنوانن یک رابطه مطرح می شوند.

خواص ارتباطات رابطه ای
یک جودول یا رابطه شامل خواص زیر می باشد:
1- ردیفهای تکراری در آن وجود ندارد.
2-ترتیب ردیفها مهم نیست.
3-ترتیب ستونها مهم نیست.
4-مقادیر اتمیک می باشند (یا به عبارتی همه مقادیر صفات خاصه غیر قابل تجزیه هستند.)

Life Is An Infinit Loop Try To Find A Way
To Exit From It.
.Bienvenue à notre emplacement.
http://www.codecorona.com
مشاهده سایت کاربر یافتن تمامی ارسال‌های این کاربر
Like Post نقل قول این ارسال در پاسخ
14-05-2008, 08:40 PM
ارسال: #2
RE: مقدمه ای بر پایگاه داده
لطفا" در مورد erd و تبدیل اون به پایگاه داده جدولی هم یه توضیحی بدین مر30000000000000
یافتن تمامی ارسال‌های این کاربر
Like Post نقل قول این ارسال در پاسخ
14-05-2008, 09:45 PM
ارسال: #3
RE: مقدمه ای بر پایگاه داده
دوست من به http://www.codecorona.com/forum/showthread.php?tid=1098 یک سری بزن.

Life Is An Infinit Loop Try To Find A Way
To Exit From It.
.Bienvenue à notre emplacement.
http://www.codecorona.com
مشاهده سایت کاربر یافتن تمامی ارسال‌های این کاربر
Like Post نقل قول این ارسال در پاسخ
ارسال پاسخ 


موضوعات مشابه ...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  ارتباط با پایگاه داده های مختلف mohammad 0 2,914 03-11-2007 07:24 PM
آخرین ارسال: mohammad

پرش در انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان









ترجمه MyBB فارسی - فارسی ساز نسخه ۱.۶
قدرت گرفته از MyBB, © 2002-2014 MyBB Group.

Theme "Aadamentium" created by: MyBB Themes | Tutoriale


server monitor