مقدمه اُراکل (Or – a – cle): 1- شخصی (همچون یکی از کشیشهای یونان باستان) که یکی از خدایان از طریق وی سخن میگفته است.
2- عبارت یا پاسخ مقتدرانه یا معقول.
3- شکل در هم ریخته Carole.
تعریف مذکور بیانگر همه چیز است، این طور نیست؟
صحبت از اُراکل i8 است.
این همان بانک اطلاعاتی است که تمام بانکهای اطلاعاتی دیگر را مغلوب میکند.
اُراکل یعنی عصاره تمام محصولات، بارزترین مدرک، بهترین بهترینها، چیزی که تمام حکمتها و پاسخها از آن جریان مییابد.
و اگر کشیش یونانی خود را برای مشاوره داشتید، در آن صورت هیچ مشکلی برای پیدا کردن چگونگی استفاده از این مورد مشکلساز نداشتید.
اُراکل i8 نه تنها یکی از بهترین نرمافزارهای بانک اطلاعاتی رابطهای است، بلکه یکی از پیچیدهترین آنها نیز میباشد.
اُراکل i8 کارهای بسیار جالبی انجام میدهد، اما کارهای آسان نیز گاهی اوقات مشکلساز هستند.
شاید اُراکل i8 را از طریق اینترنت خریده باشید.
شاید از اُراکل i8 در کارهایتان استفاده میکنید.
صرفنظر از اینکه چه عاملی باعث روی آوردنتان به اُراکل i8 شده است، میخواهم یک مطلب را در همین مرحله به طور واضح مطرح کنم.
موتور بانک اطلاعاتی در اختیار دارید که حقیقتا پیچیده است و قابلیتهای بسیار زیادی دارد، اما اُراکل i8 فاقد زیباییهایی است که خریداران نرمافزار در عصر تکنولوژی “Plug and Play" خواهانند.
اُراکل i8 به تنهایی همچون اکسس میکروسافت یا پارادکس نیست، یعنی برنامههایی که همه چیز را آماده و سهلالاستفاده به طور یکجا دارند.
اُراکل i8 از نظر شمای ظاهری بسیار ساده است و ویژگیهای بسیار کمی برای گزارشگیری و آمادهسازی فرمها دارد.
کشف اُراکل i8: برنامهای که همه چیز را یکجا دارد در دهه 70 میلادی شخصی به نام لری الیسون[1] نرمافزار بسیار بزرگی نوشت.
برنامه اُراکل در یک کامپیوتر بزرگ[2] اجرا میشد و اندازه آن به قدری بزرگ بود که تنها کامپیوترهای بسیار بزرگ، فضا برای آن داشتند.
روزی یکی از دوستان وی این برنامه را دید و از وی خواست که یک نسخه از آن را در اختیار او بگذارد، و لیکن به وی اطلاع داد که کامپیوترش قادر به اجرای آن برنامه بزرگ نیست.
بنابراین به وی پیشنهاد نمود که چنانچه حجم برنامهاش را کاهش دهد، وجه قابل توجهای به او پرداخت خواهد نمود.
لری الیسون پیشنهاد او را پذیرفت و در کمتر از یک سال نسخه کمحجمتری از برنامه را برای کامپیوتر کوچک وی آماده نمود.
وقتی نسخه جدید برنامه به آن شخص تحویل داده شد، وی آن را «اعجابانگیز» خواند.
انجام این کار لری را بر این فکر واداشت که مالکین کامپیوترهای کوچک دیگر نیز ممکن است برنامه اُراکل را بخواهند.
بنابراین وی گروهی از بهترین مهندسین سرتاسر جهان را در کالیفرنیا گردهم آورد تا اُراکل را برای انواع کامپیوترها تولید کنند.
نسخه امروزی موتور اُراکل همان چیزی است که وی رویایش را در سر میپروراند.
استفاده از اُراکل i8 یعنی به کارگیری یک بانک اطلاعاتی بسیار قدرتمند.
هسته مرکزی اُراکل i8 شکل 11 موتور بانک اطلاعاتی اُراکل i8 و برنامههای خدماتی[3] مرکزی آن را نشان میدهد.
این برنامههای خدماتی صرفنظر از سیستم عامل یا سختافزاری که به کار میبرید، تجهیزات استاندارد همراه اُراکل i8 هستند.
این برنامههای خدماتی و خود بانک اطلاعاتی در تمام محیطها به یک شکل عمل می کنند.
تنها تفاوت موجود به امکانات درونی سیستمهایی که به کار میبرید مربوط است و اُراکل i8 از ویژگیهای منحصر به فرد هر کامپیوتر برای ذخیرهسازی، خواندن، نوشتن و غیره بهرهمند می شود.
برنامههای خدماتی مرکزی عبارتند از: WebDB – صبر کنید تا به موقع ببینید که این برنامه خدماتی قادر به انجام چه کارهایی است!
با استفاده از آن میتوانید صفحههای وبی پیادهسازی کنید که به صورت برنامه در بانک اطلاعاتی ذخیره می شوند و دادهها را بر حسب تقاضا به اینترنت یا یک اینترانت تحویل میدهند.
Enterprise Manager – استفاده از این ویژگی که در اُراکل 7 به عنوان یک برنامه خدماتی افزودنی [4] معرفی شد، در اُراکل i8 نیز ادامه دارد.
این ابزار از طریق منوها و پنجرههایی که برای انجام بسیاری از کارهای مدیریتی بانک اطلاعاتی دارد (مثلا ایجاد جداول و تعریف کاربران جدید)، سبب صرفهجویی بسیار زیاد در برنامهنویسی میشود.
SQL*Plus – این ابزار امکان ایجاد و اجرای پرسوجوها، افزودن سطرهای جدید، تغییر دادهها و نوشتن گزارشها را فراهم میسازد.
برای استفاده از آن باید با زبان برنامهنویسی SQL آشنا باشید.
زبان SQL را میتوانید در تقریبا تمام بانکهای اطلاعاتی به کار برید.
EXP و IMP - دادهها را میتوانید از بانکهای اطلاعاتی اُراکل i8صادر (EXP) و یا به آن وارد (IMP) کنید.
Precompilers – مجموعهای از «پیشکامپایلرها»[5] در دسترس هستند؛ در واقع، یک مورد برای هر یک از زبانهای برنامهسازیی چون کوبول، Ada، C، C++، پاسکال و فرترن وجود دارد.
Assistants – ویزاردهایی در اُراکل معرفی شدهاند که شما را در انجام کارهایی چون انتقال از اُراکل 7 به 8، انتقال یک بانک اطلاعاتی اکسس به اُراکل، و تبدیل ساختارهای بانکهای اطلاعاتی رابطهای به شیءها، گام به گام یاری میکنند.
راهاندازی اُراکل i8 میدانم که بسیاری از شما اُراکل i8 را در یک کامپیوتر بزرگ یا در یک شبکه به کار میبرید.
اُراکل i8 میبایست به عنوان بخشی از روتین راهاندازی اولیه کامپیوتر آماده و اجرا شود.
در غیر این صورت قادر به استفاده از Enterprise Manager نخواهید شد.
همان گونه که در قسمت «راهاندازی اُراکل i8 با استفاده از Server Manager» همین فصل شرح داده شده است، یک روش دیگر برای انجام این کار، استفاده از ابزار Server Manager در خط فرمان است.
راهاندازی بانک اطلاعاتی با Instance Manager برای راهاندازی بانک اطلاعاتی اُراکل i8 خود به شکل ذیل عمل کنید: 1- Instance Manager را اجرا کنید.
اگر از ویندوز 95، 98 یا NT استفاده میکنید، گزینههای زیر را از منو انتخاب کنید Start Programs Oracle HOME2 DBA Management pack Instance Manager دقت کنید که ممکن است نام Oracle HOME2 در کامپیوترتان Oracle HOME1 باشد.
نام دقیق این فرمان توسط شخصی که نرمافزار را بر روی کامپیوتر نصب میکند مشخص میشود.
اگر از یونیکس استفاده میکنید، فرمان ذیل را در مقابل خط فرمان سیستم عامل تایپ کنید: Oemapp instance صفحه آغازین Oracle Instance Manager را مشاهده خواهید کرد.
سپس پنجره برقراری ارتباط[6] همچون شکل 2-1 ظاهر میشود.
2- با استفاده از نام کاربری INTERNAL ارتباط برقرار کنید.
دگمه رادیویی “Connect directly to a database" را انتخاب کنید.
INTERNAL را به عنوان نام کاربری وارد و از ORACLE (یا کلمه عبور جاری) به عنوان کلمه عبور استفاده کنید.
کادر Service را خالی گذاشته و یا نام گره شبکه اُراکل را تایپ کنید.
نماد تصویری [7] Database نزدیک بالای ساختار درختی است که در پنجره سمت چپ نشان داده شده است.
وقتی این نماد تصویری را به وسیله ماوس برمیگزینید، در وضعیت متمایز[8] قرار میگیرد.
سپس تصویر چراغ راهنمایی در پنجره سمت راست ظاهر میشود.
سبز بودن چراغ آن نشانگر باز بودن و اجرای بانک اطلاعاتی است.
چنانچه چراغ آن قرمز رنگ باشد، بانک اطلاعاتی بسته است و نیاز به اجرا دارد.
چراغ زرد رنگ نیز نمایانگر آن است که بانک اطلاعاتی اجرا یا نصب شده و لیکن برای کار باز نشده است.
نماد تصویری Database نزدیک بالای ساختار درختی است که در پنجره سمت چپ نشان داده شده است.
وقتی این نماد تصویری را به وسیله ماوس برمیگزینید، در وضعیت متمایز قرار میگیرد.
3- در صورت نیاز، بانک اطلاعاتی را اجرا کنید.
اگر چراغ راهنمایی قرمز است، بانک اطلاعاتی را اجرا کنید.
برای این کار، دگمه رادیویی Database Open را در پنجره سمت راست به وسیله ماوس برگزینید.
سپس، Apply را به وسیله ماوس برگزینید.
از شما سؤال خواهد شد که از کدام پارامترهای مقداردهی اولیه استفاده شود.
OK را به وسیله ماوس برگزینید تا از مجموعه پارامترهای پیشفرض استفاده شود.
سپس پیامی مبنی بر اجرای اُراکل i8 نمایش داده می شود.
OK را یک مرتبه دیگر به وسیله ماوس برگزینید تا چراغ راهنمایی سبز رنگ را مشاهده کنید.
4- کادر (*) گوشه بالایی سمت راست را به وسیله ماوس برگزینید تا از Instance Manager خارج شوید.
اینک میتوانید قسمتهای مختلف بانک اطلاعاتی را بررسی کنید.
قطع اجرای اُراکل i 8 قسمتهای ذیل شیوه قطع اجرای بانک اطلاعاتی را نشان میدهند.
به هنگام قطع اجرای بانک اطلاعاتی خود دقت کنید، به ویژه اگر بانک اطلاعاتی را در شبکه به اشتراک گذاشتهاید.
کاربران دیگر نیز ممکن است در حال استفاده از آن باشند.
اجرای اُراکل i8 را تنها پس از کسب اجازه از DBA خود قطع کنید.
پس از حصول اطمینان از اینکه همه کاربران، کار خود را با بانک اطلاعاتی به پایان رساندهاند، اجرای آن را قطع کنید.
قطع اجرای اُراکل i8 در Desktop اُراکل i8 راهحل سادهای برای قطع اجرای بانک اطلاعاتی فراهم کرده است.
Instance Manager میتواند این کار را مدیریت کند.
با انجام کارهای ذیل میتوانید اجرای اُراکل i8 را با استفاده از ابزار مذکور قطع کنید.
1- Instance Manager را اجرا کنید.
اگر از ویندوز 95، 98 یا NT استفاده میکنید، فرمان زیر را به وسیله ماوس برگزینید.
Start Programs Oracle HOME2 DBA Management pack Instance Manager اگر از یونیکس استفاده میکنید، فرمان ذیل را تایپ کنید: Oemapp instance پنجره برقراری ارتباط ظاهر شده و اطلاعات لازم را درخواست میکند.
کادرهای پنجره برقراری ارتباط را پر کنید؛ INTERNAL را به عنوان ID کاربری وارد کنید و کلمه عبور متناظر با آن را نیز وارد کنید.
کلمه عبور پیشفرض آن ORACLE است.
3- کارهای این مرحله را تنها در صورتی که پارامترهای خود را تغییر داده و یا هیچگاه پیش از این اجرای اُراکل i8 به وسیله Instance Manager قطع نکردهاید، انجام دهید.
برای اینکه پارامترها را ذخیره کنید، Initialization Parameters را در بخش سمت چپ به وسیله ماوس برگزینید.
پارامترهای بانک اطلاعاتی خود را مشاهده خواهید کرد.
دگمه Save را در بخش سمت راست به وسیله ماوس برگزینید.
4- دگمه رادیویی Shutdown را انتخاب و Apply را به وسیله ماوس برگزینید.
همان گونه که در شکل 20-1 نشان داده شده است، فهرستی از گزینهها ظاهر میشود.
این گزینهها نشان دهنده روشهای مختلف قطع اجرای بانک اطلاعاتی هستند.
5- Immediate (گزینه پیشفرض) را انتخاب و OK را به وسیله ماوس برگزینید.
شرح گزینههای دیگر در ذیل آورده شده است.
Normal – قطع اجرای اُراکل i8 با استفاده از این گزینه بیشتر طول میکشد، اما روند کار به گونهای است که به تمام کاربران فرصت داده میشود تا کارهای خود را پیش از قطع اجرای بانک اطلاعاتی کامل کنند.
از این گزینه در مواقعی استفاده کنید که به کاربران هشدار دادهاید که ارتباط خود را قطع کنند و میخواهید قطع اجرای بانک اطلاعاتی تا کامل شدن کار آنها به تعویق بیفتد.
Abort – این گزینه برای مواقعی است که اجرای بانک اطلاعاتی با استفاده از گزینههای Normal یا Immediate قطع نمیشود.
از این گزینه در مواقعی استفاده کنید که بانک اطلاعاتی به فرامین پاسخ نمیدهد، و یا اقدام به قطع اجرای آن ناقص مانده است.
اُراکل i8 پیامی را ارسال میکند و به آگاهیتان میرساند که پیش از قطع اجرا، آنقدر در انتظار میماند تا همه کاربران کار خود را به پایان برسانند.
OK را به وسیله ماوس برگزینید.
صبر کنید تا اُراکل i8 کارش را انجام دهد.
اُراکل i8 شما را به Instance Manager باز میگرداند.
خواهید دید که چراغ راهنمایی قرمز رنگ است.
6- Instance Manager را ببندید.
کادر (*) را در گوشه بالایی سمت راست پنجره به وسیله ماوس برگزینید.
اینک بانک اطلاعاتی بسته شده و در صورت تمایل میتوانید کامپیوتر خود را خاموش کنید.
قطع اجرای اُراکل i8 در یک کامپیوتر بزرگ یا شبکه اجرای اُراکل i8 را بدون کسب اجازه از DBA خود قطع نکنید.
در کامپیوترهای بزرگ، پردازشهایی که نیاز به بانک اطلاعاتی دارند ممکن است در حال اجرا باشند – پردازشهایی که ممکن است از وجودشان آگاه نباشید.
برخی از پردازشها به گونهای زمانبندی میشوند تا پس از ساعات اداری اجرا شوند تا تأثیری بر عملیات معمول نداشته باشند.
اگر فردی به عنوان DBA تعیین شده است، به وی اطلاع دهید.
در غیر این صورت، برای آشنایی با فرمان خاصی که برای قطع اجرای اُراکل i8 است، به دفترچه راهنمای اُراکل i8 رجوع کنید.
همان گونه که در قسمت پیش شرح داده شد، متداولترین روش برای قطع اجرای اُراکل i8، استفاده از Instance Manager است.
انواع کارهایی که میتوانید با اُراکل i8 انجام دهید در این قسمت سه سناریو مطرح شدهاند که شما را در درک بهتر کارهایی که بانکهای اطلاعاتی میتوانند در دنیای واقعی انجام دهند یاری میکنند.
امیدوارم از مطالعه آنها لذت ببرید.
از قوه تخیل خود به خوبی استفاده کنید و ببینید که چه کارهایی میتوانید با استفاده از بانک اطلاعاتی خود انجام دهید.
حفظ و نگهداری اطلاعات ماهیها (مثال آسان) چرا ماهیهای یک آکواریم در مواقعی که دنیای آبیشان ساکت میشود، و در «گهواره» حبابها و امواج آرام قرار دارند این قدر مضطرب میشوند.
گمان میکنم اگر من هم چشمانم دائما از پشت آن شیشهها به چشمهای گرد و بزرگ می افتاد، مضطرب میشدم.
به مثال آکواریم باز می گردیم.
مواردی که باید بر روی آنها کار کنید در ذیل فهرست شدهاند: - حجم آب آکواریم یک گالن است.
- روزی یک مرتبه به Wesley غذا میدهیم.
- آب آکواریم را هر 14 روز یک بار عوض میکنیم.
- سه عدد از ماهیها مردهاند.
نوشته سنگ قبر آنها به شرح ذیل است: Fish Two – تاریخ تولد 1/1/96، تاریخ مرگ 15/3/96.
Fish Three - تاریخ تولد 1/1/96، تاریخ مرگ 8/4/96.
Fish Four - تاریخ تولد 1/3/96، تاریخ مرگ نامعلوم.
حفظ و نگهداری اطلاعات فروشگاه حیوانات خانگی (مثال نسبتا دشوار) من غذای ماهیهای خود را از فروشگاهی که در نزدیکی خانهام است خریداری میکنم.
این فروشگاه محل فروش قفس پرندگان، قلاده سگ، پودر شیرین و چند صد مورد دیگر است، از جمله پرندگان، خرگوش و حتی میمون.
برخی از فعالیتهای گوناگون مالک فروشگاه در ارتباط با بانک اطلاعاتی این کار عبارتند از: - حفظ و نگهداری اطلاعات تمام اقلام فروشگاه، قیمت خرید، قیمت فروش و موجودی انبار - محاسبه مالیات فروش - محاسبه مجدد موجودی انبار به هنگام فروش - تهیه ترازهای مالی ماهیانه - تهیه گزارشهای مالیاتی سالیانه - حفظ و نگهداری نام و نشانی مشتریان - چاپ نامههای شخصی برای تبلیغ - چاپ برچسبهای پستی محاسبه و حفظ و نگهداری خودکار موجودی انبار – انجام این کار مستلزم برنامهسازی و نوشتن Trigger برای بانک اطلاعاتی است که از حوصله این کتاب خارج است.
محاسبه مالیات به هنگام فروش – برای محاسبه مالیات به هنگام فروش به یک Trigger در بانک اطلاعاتی و یا یک ابزار اضافی (مثلا (Oracle Forms نیاز خواهید داشت.
استفاده از توابع درونی اُراکل i8 اُراکل i8 با توابع درونی زیادی عرضه میشود.
برخی از این توابع را میتوانید برای پردازش و مدیریت خروجی پرسوجوی خود به کار برید.
با به کارگیری این توابع در عبارت WHERE میتوانید پرسوجوهای واقعا منحصر به فرد بنویسید.
در دو قسمت آتی دو مورد از توابع متداولتر بررسی شده اند: TO – CHAR و CONCATENATE تغییر فرمت تاریخ با تابع TO – CHAR یکی از توابعی که کاربرد بیشتری دارد، TO – CHAR است که به شما امکان میدهد تا فرمت تاریخ را به هنگام نمایش تغییر دهید.
مثال قسمت پیش را یک مرتبه دیگر در نظر بگیرید.
فرض کنید میخواهیم برای برخی از خریداران، کارت تبریک تولید ارسال کنیم.
پرسوجویی برای مشاهده تاریخ تولید هر یک از خریداران (در جدول CLIENT) مینویسیم.
با استفاده از تابع TO – CHAR میتوانیم مشخص کنیم که هر یک از آنها در چه روزی از هفته متولد شده اند.
پرسوجوی انجام این کار در ذیل نشان داده شده است.
SELECT CUST – ID’ NAME’ TO – CHAR (BIRTH – DATE' 'MM/DD/YY') "BIRTHDATE” ' TO – CHAR (BIRTH – DATE' DAY') "BIRTHDATE” ' FROM CLIENT ORDER BY BIRTH - DATE نتایج پرسوجوی بالا: CUST ID NAME Birthdate Birthday 1 Jane 06/11/59 Thursday 4 Amy 09/25/63 Wednesday 2 Jobe 05/30/66 Monday 3 Harry 10/14/71 Thursday 5 Jimmy 01/07/74 Monday تابع TO – CHAR چند پارامتر دارد که با استفاده از آنها میتوانید فرمت تاریخ را به هر شکلی که میخواهید تغییر دهید.
دادههای نوع تاریخ شامل زمان و تاریخ هستند.
اگر زمانی خاصی را مشخص نکنید، اُراکل i8 زمان پیشفرض نیمهشب را در نظر میگیرد.
از تابع TO – CHAR برای مشاهده زمان استفاده کنید.
به عنوان مثال: TO – CHAR (birthdate, 'mm/dd/yy hh: mi')، تاریخ و ساعت تولد را نمایش میدهد.
ادغام ستونها با استفاده از تابع (II CONCATENATE) به آسانی میتوانید دو ستون را ادغام و به صورت واحد نمایش دهید.
شیوه انجام این کار به شرح ذیل است: تعداد ادغام (II) را بین دو ستون قرار دهید.
اگر یکی از ستونها از نوع تاریخ است، تابع TO – CHAR را به آن بیفزایید تا به یک ستون کاراکتری تبدیل شود.
مثال مجموعه حوری دریایی را یک مرتبه دیگر در نظر بگیرید.
فهرست نمونه جلبکها بر اساس نام تهیه میشود و «خوراکی بودن» هر یک از آنها پس از نامش در بین پرانتز نمایش داده میشود.
پرسوجوی انجام این کار به شرح ذیل است.
SELECT SAMPLE – ID’ SAMPLE – DESCRIPTION II’ (‘II EDIBLE II’)’ DESCRIPTION FROM SEAWEED – SAMPLE SS’ TYPE – OF – SEAWEED TS WHERE TS.
TYPE – ID = SS.
TYPE – ID; گروهبندی و خلاصهسازی دادهها SUM – مجموع مقادیر یک ستون خاص را در تمام سطرهای انتخاب محاسبه میکند.
MIN – کمترین مقدار یک ستون خاص را در تمام سطرهای انتخابی محاسبه میکند.
MAX – بیشترین مقدار یک ستون خاص را در تمام سطرهای انتخاب محاسبه میکند.
COUNT – تعداد سطرهای انتخابی را شمارش میکند.
تغییر دادهها قدرت واقعی SQL از این جهت که همزمان بر تعداد زیادی از سطرها عمل میکند، آشکار است.
یک فرمان به تنهایی میتواند تمام سطرهای یک جدول را تغییر دهد.
با استفاده از همان تکنیکهای گردآوری سطرها در یک گزارش میتوانید همزمان تعداد زیادی از سطرها را تغییر دهید.
روند انجام این کار در این قسمت تجزیه شده است.
سه فرمان اصلی این کار عبارتند از: UPDATE، INSERT و DELETE.
هر یک از فرامین اجزای جالبی دارند.
تغییر دادهها با استفاده از فرمان UPDATE این فرمان به شما امکان میدهد تا دادههای ذخیره شده در یک جدول را تغییر دهید.
ممکن است نام اشخاص را در کلید «نام خانوادگی»ذخیره کرده باشید.
ممکن است ستون جدیدی افزوده باشید و اینک نیاز به ذخیرهسازی دادهها داشته باشید.
فرمان UPDATE میتواند شما را یاری کند.
این فرمان اشکال مختلفی دارد.
دو قسمت آتی به بررسی دو شکل از این فرمان اختصاص یافتهاند.
کاربرد زیر پرسوجوها شکل دوم فرمان UPDATE به دلیل استفاده از یک پرسوجو (یک پرسوجو در فرمان UPDATE) انعطاف›پذیری بسیار زیادی دارد.
قالب فرمان در این حالت به شکل ذیل است: UPDATE table SET (columnname’ columnname2’ …)= (SELECT columnname3, columnname4, … FROM Tablename2 WHERE Subquery where clause) WERE Update where clause; استفاده درست از پرانتزها بسیار مهم است.
استفاده از پرسوجوهای وابسته فراگیری سومین شکل فرمان UPDATE بسیار دشوارتر است، اما انعطافپذیرترین شکل این فرمان است.
درج سطرهای جدید این مطلب جدید را به طور خلاصه بیان می کنم: فرمان INSERT سه شکل مختلف دارد که مشابه فرمان UPDATE هستند.
درج یک سطر منفرد وقتی مشخصات سطری را دقیقا میدانید، شیوه درج آن به شکل ذیل است: INSERT INTO Tablename (columnname1, columnname2, …) Values (Value1, Value2, …); درج با زیر پرسوجو یا زیر پرسوجوی وابسته فرمان INSERT مشابه زیر پرسوجوی مورد استفاده در به روزرسانیهاست.
برای آشنایی با شیوه نوشتن زیر پرسوجوها به قسمتی که به بروزرسانی دادهها با استفاده از زیر پرسوجوها اختصاص یافته نگاه کنید.
مطالب در اینجا تکرار نخواهند شد.
فرمت اصلی برای این نوع فرمان INSERT به شکل زیر است: INSERT INTO Tablename (column1, column2, …) Subquery; تعریف یک شیء یک شیء میتواند هر چیزی و از هر نوعی باشد هر شیء از نقطه نظر اُراکل i8 یک چارچوب کاری است که موارد ذیل را تعیین میکند.
- شیوه ذخیرهسازی دادهها - محل ذخیرهسازی دادهها - نوع دادههای قابل ذخیرهسازی - شیوه کنار هم قرار دادن دادهها برای رسیدن به بخشهای بزرگتر منطقی آشنایی با شیءها هر شیء را مانند مجموعهای کلی از مفاهیم تصور کنید.
شیءها حاوی دادههایی درباره یک چیز در دنیای واقعی هستند، مثلا قطعهای از یک اتومبیل، هر شیء علاوه بر دادهها، اطلاعاتی درباره کارهایی که میتوان با دادهها انجام داد دارد.
انواع شیءها قابلیت تعریف «نوع» به اُراکل i8 امکان میدهد تا فرمت یک ستون شیئی، یک جدول شیئی، جداول تودرتو یا Varrayها را تعریف کنید.
جدول 1-6: «نوع»های رابطهای – شیءگرا آشنایی با متدها متدها مجموعه دستورالعملهای اجرایی هستند که با یک شیء همراه هستند و برای بازیابی دادهها یا تغییر آنها مورد استفاده قرار میگیرند.
متدها قلب فنآوری شیءگرا به شمار میآیند.
فرض کنید با یک بانک اطلاعاتی رابطهای – شیءگرا کار میکنید که حاوی اطلاعاتی درباره شیوه ساخت یک نوع هواپیما است.
مرتبط کردن جداول رابطهای با شیءها اُراکل i8 ترکیبی از بانکهای اطلاعاتی شیءگرا و رابطهای است.
اُراکل i8 دو پل بین جداول رابطهای و شیءها قرار داده تا بتوانید آنها را با یکدیگر ترکیب کنید.
ویو شیئی: ویو شیئی، برای نگاشت جداول رابطهای به شیء است.
همچون ویوهای رابطهای، ویو شیئی نیز فاقد دادههای خاص خود است؛ صرفا روشی برای نگاه کردن به دادههای جداول است.
این ویو به شما امکان میدهد تا از جداول رابطهای به صورت شیءگرا استفاده کنید.
جداول شیئی: این جداول، جداولی مشتمل از سطرهایی هستند که خود شیء میباشند.
این جداول، روشی برای گردآوری گروهی از شیءها و مدیریت و پردازش آنها با تکنیکهای جداول رابطهای مرسوم به شمار میآیند.
جداول شیئی میتوانند کلید اصلی و شاخص نیز داشته باشند.
کاربران اُراکل عناوین این بخش - آشنایی با کاربرد کاربران - با نقش خود در زندگی آشنا شوید.
- سوگند دادن کاربران - استفاده Security Manager - تغییر کلمات عبور ایفای یک نقش یک نکته جالب درباره اُراکل i8 وجود دارد: هر جدول در اُراکل i8 با یک ID کاربری ایجاد میشود.
ID کاربری که جدول را ایجاد میکند، مالک جدول نامیده میشود.
مالک جدول میتواند هر کاری انجام دهد، از جمله حذف آن.
هر کاربر در اُراکل i8 قابلیت بالقوهای برای ایجاد جداول دارد، چرا که DBA میتواند نقش خاص انجام این کار را به هر یک از کاربران نسبت دهد.
DBA، نقشهایی را به کاربران نسبت میدهد که قابلیتهای آنها را محدود نموده و یا گسترش میدهند.
این نقشها همچنین مشخص میکنند که کدام کاربران «مالک» هستند و کدام کاربران صرفا قادر به مشاهده جداول هستند.
چه نوع کاربرانی در اُراکل i8 وجود دارند؟
پنج نقشی که به صورت نقشهای استاندارد با اُراکل I8 عرضه میشود عبارتند از: DBA – بزرگترین نقش در بین تمام نقشها.
در نیای اُراکل i8 میتوان بیش از یک DBA داشت.
باور کردنی نیست، اما حقیقت دارد.
DBA اُراکل i8 میتواند IDهای کاربری جدید ایجاد کند، فضای بانک اطلاعاتی را افزایش دهد.
بانک اطلاعاتی را اجرا و اجرای آن را متوقف کند.
IMP – FULL – DATABASE و EXP – FULL – DATABASE: این دو نقش از فرمانروایی اُراکل i8 میتوانند نسخهای از کل جهان هستی ایجاد نمایند و در محل دیگری قرار دهند.
چه قدرتی!
افراد بسیار کمی برای این دو موقعیت انتخاب میشوند.
DBA معمولا این دو نقش را برای خود در نظر میگیرند.
RESOURCE: این همان نقشی است که شما را به یک مالک (یعنی به محض اینکه جدولی برای خود ایجاد میکنید) مبدل میسازد.
تمام کاربران بانک اطلاعاتی این نقش را دارند.
CONNECT: افرادی که به هر دلیل از بانک اطلاعاتی استفاده میکنند در این نقش هستند.
با این نقش نمیتوانید کار زیادی انجام دهید و تنها به درب بانک اطلاعاتی میرسید.
گزینههای امنیت: نقشها، کاربران و مجوزها عناوین این بخش - آشنایی با موارد امنیتی درونی - ایفای نقشها - طراحی نقشها در Security Manager - ایجاد و تخصیص نقشها با SQL - آزمایش پروفایلهای کاربران گزینههای استاندارد اُراکل برای امنیت موارد امنیتی استاندارد در دنیای بانک اطلاعاتی اُراکل i8 به شرح ذیل است: - تمام جداول شیءها یک مالک دارند – کاربری که آنها را ایجاد کرده است.
- اگر شما مالک باشید، DBA و خودتان مجاز به انجام کارهای ذیل هستید: مشاهده دادهها مشاهده و تغییر ساختار جدول یا شیء (نام ستونها و غیره) افزودن و حذف سطرها افزودن، تغییر و حذف دادهها در هر یک از جداول، سطرها یا ستونها تغییر ساختار (افزودن، تغییر و حذف ستونها) حذف جدول یا شیءها ایجاد سینونیمها، ویوها، شاخصها، کلیدهای اصلی، رابطهها و ارجاعها اعطاء و لغو مجوز هر یک از کاربران یا نقشها برای انجام کارهای بالا نقشها نیازهای دنیای واقعی را برآورده میکنند نقشها شمار را در حفظ و نگهداری اطلاعات مربوط به اینکه چه کسانی قادر به انجام چه کارهایی در بانک اطلاعاتی هستند، یاری میکنند.
برای تفهیم این مطلب، میتوانم نشان دهم که نقشها در گذشته (زمانی که همسن شما بودم) چگونه بودند.
فرض کنید که مدیریت شرکتی بر عهده شماست که 35 کارمند دارد.
15 نفر از این کارمندان در استخدام شرکت هستند و 20 نفر دیگر به طور ساعتی کار میکنند.
دو نفر دیگر از مدیران شرکت ساعتی کار میکنند.
مابقی مدیران در استخدام شرکت هستند.
تمام کارمندان ساعتی باید اطلاعات ورود و خروج خود را در جدولی به نام TIMECARD وارد کنند؛ سپس تمام مدیران باید تمام اطلاعات را مرور کنند و میزان پرداخت را در جدول PAY – RATE ذخیره کنند.
شکل 1-12 نشان میدهد که اعطای مجوز دستیابی مستقیم به هر یک از کارمندان در دوران پیش از مطرح شدن نقشها در نگارش ششم اُراکل و پیش از آن چگونه انجام میشده است.
اینک با وجود اُراکل i8 میتوانید دو نقش ایجاد کنید: - نقش مدیر میتواند میزان پرداختیها را مشاهده و تغییر دهد.
- نقش کارمندان ساعتی میتواند دادههای کارت ساعات ورود و خروج را وارد کند.
نقشها و حقوق دستیابی باSecurity Manager اگر از اُراکل i8 شخصی خود استفاده کنید و یا اگر DBA باشید، ایجاد و تخصیص نقشها آن قدر ساده است که ترسناک به نظر میرسد!
تنها DBA میتواند نقشها را ایجاد کند، مگر آنکه این حق را به کاربر یا نقش دیگری اعطاء کند.
تنها مالک جداول می تواند حقوق دستیابی را اعطاء کند (مگر آنکه مالک جدول این حق را به کاربر یا نقش دیگری بدهد).
ایجاد یک نقش مراحل ایجاد نقش با استفاده از Security Manager عبارتند از: 1- Security Manager را اجرا کنید.
اگر Lanchpad در حال اجراست، Security Manager را از منوی DB: Administration انتخاب کنید.
در غیر این صورت، Start Programs Oracle HOME2 DBA Management pack Security Manager را در ویندوز 95، 98 یا NT انتخاب کنید.
اگر از یونیکس استفاده میکنید، Oemapp Security را در مقابل خط فرمان تایپ کنید.
اگر پنجرهای برای برقرار ارتباط ظاهر شد، به مرحله شماره 2 بروید.
در غیر این صورت به مرحله شماره 3 بروید.
2- با استفاده از نام کاربری و کلمه عبور اُراکل i8 معتبری ارتباط برقرار کنید.
یک روش برای این کار استفاده از ID کاربری و کلمه عبور تمام بانک های اطلاعاتی اُراکل i8 است.
SYSTEM (کلمه عبور MANAGER).
اگر از نسخه شخصی اُراکل i8 استفاده میکنید، کادر Service را خالی بگذارید.
در غیر این صورت، نام بانک اطلاعاتی اُراکل i8 خود در شبکه را تایپ کنید، مقدار پیشفرض Normal را در کادر Connect As باقی بگذارید.
3- Object Create – Role را از منوی بالا انتخاب کنید و دگمه Create را به وسیله ماوس برگزینید.
کادر مکالمه Create Role همچون شکل 3-12 ظاهر میشود.
4- نام نقش جدید را در کادر Name تایپ کنید.
طبق قواعد نامگذاری اُراکل i8 که در فصل دوم آورده شدهاند عمل کنید.
MANAGER را در کادر Name تایپ کنید تا روند ایجاد نقشهای این مثال آغاز شود.
5- روش «اعتبارسنجی» را انتخاب کنید.
معمولا None انتخاب می شود تا مشخص شود که روند خاصی برای بررسی اعتبار جهت نقش در دست ایجاد نیست.
6- تَب Role را به وسیله ماوس برگزینید.
نقشها را انتخاب و با برگزیدن دگمه Add، آنها را به این نقش نسبت دهید.
نقشهای عمومی بانک اطلاعاتی را میتوانید در این تب بیفزایید.
هیچ نقشی به نقش MANAGER افزوده نمیشود.
7- دگمه Create را به وسیله ماوس برگزینید.
نقش ایجاد میشود و به پنجره اصلی باز خواهید گشت.
8- مراحل شماره 3 تا 7 را برای ایجاد نقش دوم تکرار کنید.
نقش دیگری ایجاد کنید و HOURLY را در مرحله شماره 4 به عنوان نام آن تایپ کنید.
9- کادر (*) را در گوشه بالایی سمت راست پنجره به وسیله ماوس برگزینید تا اجرای Security Manager قطع شود.
تخصیص پروفایلها به کاربران تخصیص پروفایلها به کاربری که ایجاد میکنید به شما امکان می دهد تا قابلیتها و محدودیتهای وی در بانک اطلاعاتی را مطابق با نیازها تعیین کنید.
کارهای ذیل را برای تخصیص یک پروفایل به یک کاربر انجام دهید.
اگر در Security Manager هستید، به مرحله شماره 2 بروید.
1- Security Manager را اجرا کنید.
SYSTEM و MANAGER..
پنجره Security Manager ظاهر میشود.
3- فولدر Users را در پنجره Naviagator برنامه Security Manager دو مرتبه متوالی به وسیله ماوس برگزینید.
فهرستی از کاربران در ذیل فولدر ظاهر میشود.
4- کاربر مورد نظر را انتخاب کنید.
در این مثال، پروفایل JUDGE – PROFILE ایاد شده در قسمت پیش را به کاربری به نما AMY تخصیص خواهیم داد وقتی AMY را انتخاب میکنید، قسمت راست صفحه نمایشگر جزییات وی را نمایش میدهد.
5- فلش سمت راست Profile را به وسیله ماوس برگزینید و پروفایل مورد نظر را انتخاب کنید.
وقتی فلش کنار کادر Profile را به وسیله ماوس برمیگزینید، فهرست تمام پروفایلهای موجود را خواهید JUDGE – PROFILE را به گونهای که در شکل 9-12 نشان داده شده است انتخاب کنید.
6- Apply را به وسیله ماوس برگزینید تا تغییرات در بانک اطلاعاتی ذخیره شوند.
ایجاد پروفایلهای شخصی شما را (DBA) در کنترل کاربرد بانک اطلاعاتیتان توسط اشخاص مختلفی که نقشهایی به آنها تخصیص مییابد یاری میکند.
به عنوان مثال، میتوانید نقشی به نام VAMPIRES را برای هر جلسه کاری به 10 ثانیه از وقت CPU محدود کنید تا کاربران وقت سیستم را بیهوده هدر ندهند.
یا ممکن است بخواهید نقشی به نام MUTANT – CLONES را در خصوص جلسات کاری همزمان محدود کنید تا کاربران نتوانند همچون قارچی تکثیر شوند.
قدری استراحت کنید و برای آشنایی با جنبه دیگری از امنیت به صفحه بعد نگاه کنید: سینونیمها و ویوها.
- آشنایی با WebDB - مشاهده دادهها با WebDB - ایجاد گزارش در وب