اوراکل اپکس- چند نکته در اوراکل قسمت اول

چند نکته در دیتابیس اوراکل-قسمت اول

 

SQL را تلفظ کنیم؟ (S-Q-L or SeQueL)🎤
(S-Q-L *** SeQueL): در واقع تلفظ اولیه SQL همان سی کوئل (SEQUEL) مخفف (Structured English Query Language) بوده است و طراحان اولیه این زبان در IBM بعد از مدتی کلمه English را حذف کردند و تبدیل شد به (Structured Query Language).
حال بعضی از افراد به علت احترام گذاشتن به نام اولیه آن را:
سی کوئل (SEQUEL) و بر خی دیگر آن را (S-Q-L) نام می برند.
استفاده از PLS_INTEGER در اوراکل
  • وقتی از مقادیر عددی بدون اعشار استفاده می کنید موثر خواهد بود.
  • حداکثر مقدار آن ۳۲ بیتی می باشد بین -۲,۱۴۷,۴۸۳,۶۴۸ تا ۲,۱۴۷,۴۸۳,۶۴۷ می باشد. صفر را نیز شامل می شود.
  • کاربرد آن در PL/SQL می باشد و نمی توان بعنوان Type فیلدهای جداول مورد استفاده قرار گیرد.
  • در مقایسه با NUMBER (درای پردازش سنگین) از پردازش کمتری استفاده می کند. به این علت پیشنهاد می شود جاهایی که دارای مقادیر (مثبت و صفرو منفی) می باشد از آن استفاده شود.
  • معمولا افراد در Index Type برای Array ها استفاده می کنند. ولی می توان در موارد دیگر نیز مورد استفاده قرار گیرد.
سه ابزار پیشنهادی از طرف آقای Steven Feuerstein  برای تست PL/SQL
📌utPLSQL: “Junit for PL/SQL”, an open source framework that I originally built in 1999 and is now managed by Paul Walker.
📌SQL Developer Unit Testing: Oracle’s free PL/SQL IDE offers integrated unit testing.
📌Dell Code Tester for Oracle: a commercial unit testing tool that I originally designed and helped to build, sold as part of the Toad Development Suite for Oracle.
ایجاد عدد رندوم بصورت ساده در اوراکل

FUNCTION random_pin (digits IN NUMBER) IS
BEGIN
IF digits IS NULL OR digits < 1 THEN
RAISE_APPLICATION_ERROR(-20000,'No.');
END IF;
RETURN TRUNC( DBMS_RANDOM.value(
POWER(10, digits-1)
,POWER(10, digits) ));
END random_pin;
Test: random_pin(digits => 7);
۴۸۲۳۷۲۹
یک اسکریپت ساده برای محاسبه دقیقه در اوراکل
select
round(
(to_date('1394/04/05 12:30','yyyy/mm/dd hh24:mi')
-to_date('1394/04/04 11:30','yyyy/mm/dd hh24:mi')
) * ۲۴ * ۶۰
,۰) as result_in_minutes
from dual;
Duplicate کردن مقدار خروجی یک کوئری در اوراکل
می توانید از یک Query مجازی استفاده نمایید.
بطور مثال:

select *
from emp,(select level
from dual
connect by level < 3
)
حال هر چند بار که خواسته باشید می توانید رکورد تکراری ایجاد کنید. به جای جدول emp نام جدول خود را جایگزین کنید.
بدست آوردن تاریخ اول و آخر هر ماه در اوراکل
select To_Char(Last_Day(ADD_MONTHS(sysdate,-1))+1,'YYYY/MM/DD') AS FA_F_DAY,
To_Char(Last_Day(sysdate),'YYYY/MM/DD') AS FA_L_DAY
,Last_Day(ADD_MONTHS(sysdate,-1))+1 as EN_F_DAY
,Last_Day(sysdate+1) as EN_L_DAY
,To_Char(Last_Day(ADD_MONTHS(to_date('1395/12/10','YYYY/MM/DD'),-1))+1,'YYYY/MM/DD') AS FA2_F_DAY
,To_Char(Last_Day(to_date('1395/12/10','YYYY/MM/DD')),'YYYY/MM/DD') AS FA2_L_DAY
,Last_Day(ADD_MONTHS(to_date('2016/11/26','YYYY/MM/DD','NLS_CALENDAR=Gregorian'),-1))+1 as EN_F_DAY
,Last_Day(to_date('2016/11/26','YYYY/MM/DD','NLS_CALENDAR=Gregorian')+1) as EN_L_DAY
from dual
مشاهده n رکورد آخر یک کوئری – جدول اوراکل
در این مثال می خواهم ۱۰ تا رکورد آخر را مشاهده کنم:
شما می توانید از یک حقه استفاده نمایید: به مثال زیر توجه کنید
SELECT * FROM (SELECT * FROM yourtable ORDER BY yourfield DESC )
WHERE ROWNUM <= 10
در کوئری داخلی رکوردهای جدول را براساس هر فیلدی که مورد نظرتان است را بصورت نزولی مرتب کنید و سپس در کوئری خارجی ۱۰ تای آنرا برگردانید.
چند نکته در دیتابیس اوراکل-قسمت دوم
چند نکته در دیتابیس اوراکل-قسمت سوم
امیدوار هستم که کمک کرده باشم.
چند نکته در دیتابیس اوراکل-قسمت اول
امتیاز ۳٫۷ از ۳ رای

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این قسمت نباید خالی باشد
این قسمت نباید خالی باشد
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست
Oracle APEX Capabilities (OAC)