توابعی که در این متن توضیح داده می شوند، داده های دریافتی از نوع کاراکتری، عددی یا تاریخ را به نوع دیگر تبدیل می کنند. در ادامه توابعی که مربوط به مقادیر NULL می باشند معرفی می گردند. همچنین روش استفاده از عبارات شرطی با منطق IF THEN-ELSE توضیح داده می شود.
نکاتی در مورد مجوز پکیج در اوراکل
زمانی که user1 مجوز اجرای پروسیجرش را به user2 اهدا می کند، user2 علاوه بر امکان اجرای این پروسیجر، می تواند محتویات پروسیجر را هم مشاهده کند:
SQL> show user
User is “user1”
SQL> create user user2 identified by u;
User created
SQL> grant create session to user2;
Grant succeeded
SQL> grant execute on user1.myproc1 to user2;
Grant succeeded
SQL> conn user2/u
Connected.
SQL> exec user1.myproc1;
PL/SQL procedure successfully completed.
خطاهای رایج در اوراکل- ORA-01034: ORACLE not available
شرح خطا: خطای ORA-01034: ORACLE not available ممکن است در زمان اتصال به دیتابیس از طریق ابزارهایی چون Sqlplus، Sql Developer و … رخ دهد:
[oracle@stb ~]$ sqlplus “usef/p”
SQL*Plus: Release 18.0.0.0.0 – Production on Fri Oct 4 00:52:20 2019
Version 18.3.0.0.0
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
آموزش sql مقدماتی – توابع در SQL(قسمت اول)
در دستورات SQL هر تابع مجموعه ای از عملیات انجام می دهد و می تواند تغییراتی را بر داده های دیتابیس اعمال کند. در دیتابیس اوراکل می توان یک تابع جدید تعریف نمود یا از توابع از پیش تعریف شده استفاده کرد. توابع از پیش تعریف شده برای اطلاعات با نوع داده های مختلف(کاراکتر، عددی، تاریخی و …) استفاده می شوند. در این فصل ساختار کلی توابع در SQL را عنوان می کنیم و تعدادی از توابع از پیش تعریف شده در دیتابیس اوراکل و روش استفاده از آنها را با ذکر مثال توضیح می دهیم.
توابع SQL می توانند یک یا چند آرگومان ورودی داشته باشند ولی تنها یک مقدار را به عنوان خروجی (output) برمی گردانند.
+ مقادیر ورودی یا همان آرگومنت ها می توانند عبارت، ستون، متغیر و یا یک مقدار ثابت باشند.
پیکربندی سامبا برای اشتراک گذاری بین لینوکس و ویندوز
همانطور که می دانید برای به اشتراک گذاری و انتقال اطلاعات بین سیستم عامل لینوکس و دیگر سیستم عاملها نظیر ویندوز می توان از سرویس سامبا استفاده کرد به عبارتی دیگر، سامبا پروتکل به اشتراک گذاری فایل ها و منابع موجود در شبکه می باشد. پیکربندی سرویس سامبا به دو روش Secure و Anonymous قابل انجام است که در این مقاله به تشریح مراحل پیکربندی این سرویس به هر دو این روشها در محیط اوراکل لینوکس 7.6 می پردازیم.
آموزش SQL مقدماتی – محدودسازی با کمک عبارت WHERE
زمانی که می خواهیم فقط تعداد مشخصی از سطرهای یک جدول را انتخاب کنیم باید در دستور SQL از عبارت WHERE استفاده کنیم. عبارت WHERE به منظور محدودسازی در زمان نمایش یا ویرایش اطلاعات استفاده می شود بنابراین فقط بخش هایی از اطلاعات که نیاز داریم را انتخاب می کنیم. محل قرارگیری عبارت WHERE در دستور SELECT بعد از عبارت FROM است. این عبارت به ترتیب از سه قسمت زیر تشکیل می شود:
1.نام ستون
2.شرط مقایسه ای
3.نام یک ستون یا مقداری ثابت یا لیستی از مقادیر
مثال: اطلاعات کارمندانی را که در دپارتمان شماره 90 مشغول به کار هستند را نمایش دهید.
بهبودهای DBMS_SCHEDULER در اوراکل 12c
زمانی که DBMS_SCHEDULER در اوراکل 10g ارائه شد، تنها سه نوع جاب PLSQL_BLOCK، STORED_PROCEDURE و EXECUTABLE را پشتیانی می کرد در اوراکل 11g هم تغییر قابل توجهی در این مسئله رخ نداد تا اینکه در نسخه 12c اوراکل job_typeهای جدیدی را به این مجموعه اضافه کرد تا تنظیم بعضی از جابها به شکل ساده تر و با وابستگی کمتری به محیط سیستم عامل قابل انجام باشد:
SHELL_SCRIPT – SQL_SCRIPT – BACKUP_SCRIPT
در این متن با هر کدام از این نوع جابها آشنا خواهیم شد.
آموزش SQL مقدماتی – دستور SELECT
دستور SELECT یکی از پرکاربردترین دستورات SQL می باشد که با استفاده از آن اطلاعات دیتابیس اوراکل که در حافظه یا دیسک قرار دارند نمایش داده می شوند. در این متن انواع روش های استفاده از دستور SELECT برای بازیابی و نمایش اطلاعات از دیتابیس اوراکل را توضیح می دهیم.
همانطور که می دانیم در دیتابیس اوراکل یک جدول از ستون و سطر تشکیل شده است. در دستور SELECT ابتدا نام ستون یا ستون هایی از یک جدول که می خواهیم اطلاعات آن را نمایش دهیم را انتخاب می کنیم و سپس بعد از عبارت FROM نام آن جدول را می نویسیم. در خروجی این دستور اطلاعات ستون های انتخاب شده برای سطرهای جدول نمایش می یابند.
مثال: در دستور SELECT زیر ستون های DEPARTMENT_ID و LOCATION_ID از جدول DEPARTMENTS انتخاب شده اند و در خروجی این دستور، اطلاعات مورد نظر نمایش می یابند.
+ به هر ترتیبی که نام ستون ها را در دستور SELECT انتخاب کنیم، نمایش اطلاعات نیز به همان ترتیب خواهد بود. در مثال قبلی ابتدا اطلاعات ستون DEPARTMENT_ID و سپس اطلاعات ستون LOCATION_ID نمایش داده می شود.
rollback کردن عملیات REDEFINITION(اوراکل 12c)
زمانی را تصور کنید که ساختار جدول حجیمی را با کمک بسته DBMS_REDEFINITION تغییر داده ایم. بعد از اتمام عملیات redefinition، به این نتیجه رسیده ایم که تغییر انجام شده، سبب کندی در عملیاتی که بر روی این جدول انجام می شوند، شده است. قصد داریم جدول را به ساختار پارتشن نشده قبل برگردانیم، راهکار چیست؟
یکی از بهبودهایی که در نسخه 12c به بسته DBMS_REDEFINITION اضافه شد، قابلیت rollback کردن عملیات انجام شده می باشد این کار به کمک پارامتر enable_rollback از بسته DBMS_REDEFINITION قابل انجام است.
انجام عملیات redefinition در یک مرحله با کمک پروسیجر REDEF_TABLE (اوراکل 12c)
همانطور که می دانید در اوراکل 11g، برای هرگونه استفاده از بسته DBMS_REDEFINITION باید مراحلی را طی نمود و انجام عملیات در یک گام امکان پذیر نمی باشد.
در اوراکل نسخه 12c، پروسیجر جدیدی به نام REDEF_TABLE به بسته DBMS_REDEFINITION اضافه شده است که از طریق ان می توان عملیاتی نظیر جابجایی انلاین و تغییر tablespace جداول و همچنین تغییر نوع فشرده سازی جداول و ایندکسها را صرفا در یک مرحله انجام داد.