به نـام آنکه جان را فکرت آموخت

                                                           چراغ دل به نـور جـان برافـروخت

 پيشگفتار

در چند دهه اخير، تعداد زيادی سيستم مديريت پايگاه داده ها ( DBMS[1] ) توليد  شده است که تنها برخی از آنها دارای کاربرد تجاری وسيع می باشد. هم اکنون شرکت های توليد کننده اين سيستمها، برای افزايش نسبت کارايی به هزينه رقابت می کنند. از جمله اين شرکت ها می توان به اوراکل و IBM ( سيستم* DB2 ) اشاره نمود.

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

در اين کتاب ( بخشی از ) امکانات کاربردی سيستم اوراکل ( نسخه 10g )، تشريح  می گردد. بطور معمول، در هر نسخه از اوراکل حجم وسيعی از امکانات جديد، ارائه می شود و همراه با آن چندين هزار صفحه منابع مکتوب و الکترونيک در معرفی امکانات موجود در نسخه جديد عرضه می گردد و در اين حال و هوا يک اثر فارسی چه جايگاهی خواهد داشت؟ در اين کتاب سعی شده، دو مشکل تيمهای توليد کننده سيستمهای کاربردی[2] پايگاهی، رفع گردد.

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

مشکل ديگر آن که برخی از اين تيمها، امکانات سيستم پايگاهی را بطور منفک از مفاهيم و اصول مبنايی دانش پايگاه داده ها، آموزش ديده و بکار می گيرند. مباحث اين کتاب، تا حد امکان ( و در حد نياز محيطهای کاری )، با ديدگاه تئوری دانش پايگاه داده ها، ارائه شده است.

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

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

بيشتر مثالهای کتاب، ويژه همين کتاب است و در برخی از مباحث، مثالهايی از راهنمای اوراکل، اقتباس، شده است. سعی شده مثالها به فرم ساده و مفهومی ذکر شود تا خواننده   به سرعت مضمون مورد نظر را درک نمايد. همچنين تقريبا تمام مثالهای کتاب در شمای کاربر دمو در اوراکل ( scott ) قابل اجرا هستند و نيازی به آماده سازی اوليه وجود ندارد.

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

معادلهای فارسی ( بغير از برخی اصطلاحات خاص در اوراکل ) از کتاب مرجع دانشگاهی "مفاهيم بنيادی پايگاه داده ها" انتخاب شده است تا برای بيشتر خوانندگان مانوس باشد. با اين حال در کتاب کلمات و اصطلاحات انگليسی بصورت پانوشت ذکر گرديده است. همچنين ضميمه واژه نامه فارسی به انگليسی ارائه شده است.     

اين کتاب در پنج بخش و سيزده فصل تنظيم شده است. در بخش اول، مفاهيم مقدماتی لازم، برای استفاده از سيستم اوراکل ارائه می گردد. در اين بخش، به اختصار، مفهوم   پايگاه داده ها، ويژگيهای شاخص اوراکل و روشهای ارتباط با اوراکل بيان شده است.

در بخش دوم، زبان SQL بررسی می گردد. مطالب اين بخش بگونه ای تنظيم شده است که بتواند ضمن بيان جايگاه تئوری دستورات اين زبان، بعنوان يک مرجع سريع کاری نيز، مورد استفاده قرار گيرد. در اين بخش، دستورات زبان SQL، به تفکيک DDL ، DML و DCL  بررسی می گردد.

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

بخش چهارم، به مباحث شیء گرا، اختصاص دارد. در اين بخش امکانات  شیء گرا در سيستم شیء - رابطه ای[3] اوراکل، معرفی می گردد. جهت آشنايی با اهداف شیء گرايی در يک سيستم پايگاهی، در ابتدای اين بخش، به اختصار، مدل سازی معنايی شیء گرا در UML بررسی شده است و پس از آن تعريف و خواص اشياء در اوراکل، معرفی می گردد.

در بخش پنجم، نمونه سوالات آزمونهای رسمی شرکت اوراکل ارائه شده است. بررسی اين سوالات تستی، علاوه بر آمادگی برای آزمونهای رسمی، جهت اطمينان از فهم مطالب ارائه شده در کتاب مفيد است. در اين بخش، نمونه سوالاتی در محدوده زبان SQL و PL/SQL همراه با پاسخهای آن، ارائه شده است.

بخشی از اين سوالات از کتابهای مرجع آزمونهای رسمی اوراکل ( که در فهرست منابع ذکر شده، )  استخراج شده است و بقيه سوالات توسط مولف طرح شده اند. از آنجا که آشنايی با متون انگليسی برای شرکت در آزمونهای رسمی و مطالعه کتب مرجع، لازم است، مجموعه سوالات، به زبان انگليسی ارائه گرديده است.

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

در صورتی که سيستمهای مديريت پايگاه داده های ديگری برای اين درس، به دانشجويان پيشنهاد شود، برگزاری سمينارهای دانشجويی، می تواند، باب مقايسه اين سيستمها را باز نمايد.

همانطور که گفته شد، اين کتاب در حيطه مباحث کاربردی سيستم اوراکل، تاليف شده است و مباحث زير را پوشش می دهد :

- SQL

- PL/SQL

- Object Relational Features

آشنايی با چگونگی امکانات مديريتی در اوراکل در محدوده چند کتاب ديگر، می باشد. مطابق تقسيم بندی شرکت اوراکل، تسلط بر مباحث زير براي رسيدن به سطح حرفه اي مديريت پايگاه داده ها، لازم است :

- Architecture

- Administration

- Backup and Recovery

- Networking

- Performance Tuning

البته پس از سطح حرفه ای مديريت سيستم اوراکل، سطوح تخصصی با مضامين متنوع و انتخابی ( مانند پايگاه داده های توزيع شده و ... ) وجود دارد.

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

از استاد ارجمند جناب آقای روحانی رانکوهی بسيار سپاسگزارم که مطالب کتاب را مطالعه نمودند و نکات مهمی را درباره ساختار و محتوای کتاب متذکر شدند. اين   راهنمايی های ارزنده، لحظات شيرين حضور، درکلاس درس ايشان را در اوائل دهه 70 برايم تداعی می کند. همچنين از ايشان سپاسگزارم که با قلم دانشمندانه خود چند سطری را بر طليعه اين کتاب، نقش زدند.

از کليه کسانی که در تاليف و نشر اين کتاب سهم داشتند، سپاسگزارم و از افراد صاحب نظر، در اين علم و فن، خواستارم که کاستی ها و اشتباهات کتاب را  متذکر شده و از پيشنهادات سودمند دريغ نورزند.

با سپاس از الطاف يزدان پاک که توفيق هر خدمتی از اوست، اميدوارم اين کتاب، سهمی در اعتلای دانش انفرماتيک در ايران داشته باشد.

 

                                                                             شهرام سلامی
                                                                             تابستان 1383

 

[1]- Data Base Management System

 

*  در اين کتاب، به جای عبارت "سيستم مديريت پايگاه داده ها " به اختصار "سيستم" ذکر می شود.

 

[2]- Application System

[3]- Object Relational

 

   

 

 Copyright  2006 Parsicom Co. All Rights Reserved.