PLSQL

PL/SQL DBMS輸出

PL/SQL DBMS輸出

DBMS_OUTPUT被稱為內置包,它使我們能夠顯示輸出,調試信息,並從PL/SQL塊,子程序,包,觸發器發送消息。

示例:BEGIN dbms_output。put_line (user || '數據庫中的教師:');dbms_output.put_line(t.table_name);結束循環;結束;/

Datetime數據類型和函數

Datetime數據類型如下:

  1. 日期

此數據類型以字符和數字數據類型存儲日期和時間信息。它由世紀、年、月、日、小時和秒等信息組成。

  1. 時間戳

這是DATE的擴展數據類型。它存儲DATE數據類型的年、月和日,包括小時、分鍾和秒值。這在存儲精確的時間值時非常有用。

  1. 帶時區的Yimestamp

這是TIMESTAMP的變體,在值中包含時區區域名或偏移量。Offset是本地時間和UTC之間的差值,UTC的單位是小時和分鍾。它對於收集和評估所有地理區域的數據信息非常有用。

  1. 帶有本地時區的時間戳

這也是時區的一種變體,其值涉及時區偏移。

下麵是Datetime函數:

  1. ADD_MONTHS (x, y);- x加y個月。
  2. LAST_DAY (x);-返回本月的最後一天。
  3. MONTHS_BETWEEN (x, y);-這是x和y之間的月數。
  4. NEXT_DAY (x,天);-返回x之後第二天的日期時間。
  5. NEW_TIME;-返回程序員指定的時間/天值。
  6. ROUND(c[,單位]);-它舍入給定的c。
  7. SYSDATE ();-返回當前係統日期。
  8. TRUNC(x [, unit]);-此數據類型截斷x。

下麵是時間戳函數。

  1. CURRENT_TIMESTAMP ();-返回一個TIMESTAMP WITH TIME ZONE,包含當前會話時間和時區。
  2. EXTRACT({YEAR | MONTH | DAY | HOUR | MINUTE | SECOND} | {TIMEZONE_HOUR | TIMEZONE_MINUTE} | {TIMEZONE_REGION |} TIMEZONE_ABBR) FROM x)——從x中提取並返回年、月、日、月、秒或時區。
  3. FROM_TZ (x, time_zone);-將TIMESTAMP x和time_zone指定的時區轉換為TIMESTAMP WITH TIMEZONE
  4. LOCALTIMESTAMP ();-這給了我們包含會話時區的本地時間的TIMESTAMP。
  5. SYSTIMESTAMP ();-返回包含當前數據庫時間的TIMESTAMP WITH TIME ZONE。
  6. SYS_EXTRACT_UTC (x);-將TIMESTAMP WITH TIMEZONE x轉換為包含UTC時間和日期的時間戳。
  7. TO_TIMESTAMP (x,【格式】);-將字符串x轉換為TIMESTAMP。
  8. TO_TIMESTAMP_TZ (x,【格式】);-將字符串x轉換為TIMESTAMP WITH TIME ZONE。

間隔數據類型和函數

下麵給出了區間數據類型:

  1. 年到月的間隔

它使用YEAR和MONTH datetime字段存儲一段時間。

  1. 間隔天到秒

間隔功能:

  1. NUMTODSINTERVAL (x, interval_unit);-這將數字x轉換為間隔天到秒。
  2. NUMTOYMINTERVAL (x, interval_unit);-將數字x轉換為年到月的間隔。
  3. TO_DSINTERVAL (x);-將字符串轉換為間隔天到秒。
  4. TO_YMINTERVAL (x);-將字符串轉換為年到月的間隔。
示例:SELECT SYSDATE FROM DUAL;輸出:09/30/2021 7:12:34 SELECT LOCALTIMESTAMP FROM DUAL;輸出:09/30/2021 7:12:54.336000

DBMS_OUTPUT子程序

  1. DBMS_OUTPUT.DISABLE;—禁用消息輸出。
  2. DBMS_OUTPUT。ENABLE(buffer_size IN INTEGER DEFAULT 2000);—啟用消息輸出。
  3. DBMS_OUTPUT。GET_LINE(line OUT VARCHAR2, status OUT INTEGER)——該方法檢索一行緩衝信息。
  4. DBMS_OUTPUT.NEW_LINE;-該方法放置一個行結束標記。
  5. DBMS_OUTPUT。PUT(item IN VARCHAR2);-該方法在緩衝區中放置部分線。
  6. DBMS_OUTPUT。PUT_LINE(item IN VARCHAR2) -該方法在緩衝區中放置一行。
例如:聲明行dbms_output.chararr;num_lines數量;啟動緩衝區,默認大小為20000 dbms_output.enable;dbms_output。put_line('你好,歡迎來到偉大的學習!');beplay2018官网dbms_output。put_line('希望您喜歡教程!');dbms_output。put_line('有一個快樂的學習');Num_lines:= 3; dbms_output.get_lines(lines, num_lines); FOR i IN 1..num_lines LOOP dbms_output.put_line(lines(i)); END LOOP; END; / Output: Hello welcome to great learning! Hope you have enjoyed the tutorials! Have a happy learning! PL/SQL procedure successfully completed

Baidu
map