日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Oracle入门(十四F)之PL/SQL定义变量

發布時間:2023/12/3 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle入门(十四F)之PL/SQL定义变量 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、變量介紹

(1)變量的使用
可以使用變量:

  • 臨時存儲數據
  • 存儲值的操作
  • 可重用性

(2)PL/SQL中的變量處理
變量是:

  • 在聲明部分中聲明和初始化
  • 在可執行部分中使用和分配新值
變量可以是:
  • 作為參數傳遞給PL/SQL子程序
  • 指定保存PL/SQL子程序的輸出

(3)聲明和初始化PL/SQL變量
所有的PL/SQL變量都必須聲明在引用之前的聲明部分在PL/SQL塊中。
聲明的目的是分配為值存儲空間,指定其數據類型,并將存儲位置命名為你可以引用。
可以在聲明語句中聲明變量任何PL/SQL塊、子程序或包。


二、變量聲明和初始化變量

(1)語法

identifier [CONSTANT] datatype [NOT NULL] [:= expr | DEFAULT expr];

? identifier? ? ?定義該變量的名字

? CONSTANT? 約束變量的值不可修改,常量必須在定義時初始化
? datatype? ? ?可以是標量、復合、引用或LOB數據類型。(本課程只包括標量、復合和LOB數據類型)。

? NOT NULL? ?約束該變量必須有值?(NOT NULL變量必須被初始化)
? Expr? ? ? ? ? ? ?可以是字面量表達式、另一個變量或包含操作符與函數的表達式的任何PL/SQL表達式

(2)習慣
小寫斜體表示變量或占位符。
括號([…])包含一個或多個可選項,不插入括號。
豎桿代表在括號內兩個或多個選項的選擇,不要插入垂直條。

(3)聲明和初始化變量

示例

declare v_emp_hiredate date; v_emp_deptno number(2) not null := 10; v_location varchar2(13) := 'atlanta'; c_comm constant number := 1400; v_population integer; v_book_type varchar2(20) default 'fiction'; v_artist_name varchar2(50); v_firstname varchar2(20):='rajiv'; v_lastname varchar2(20) default 'kumar'; c_display_no constant pls_integer := 20; …

(4)在可執行部分中賦值

????在聲明變量之后,可以在可執行文件中使用它作為PL/SQL塊的一部分。例如,在下面的塊中,變量v_myname在聲明性部分塊中聲明。可以在同樣的塊的可執行部分中訪問此變量。你認為這個代碼塊會輸出什么?

declare v_myname varchar2(20); begin dbms_output.put_line('my name is: '||v_myname); v_myname := 'John'; dbms_output.put_line('my name is: '||v_myname); end;

在這個示例中,將值約翰賦值給可執行部分。變量的值是關聯My name is:

輸出是:

my name is:?

my name is: John


在這個塊中,變量v_myname被聲明并初始化在聲明部分。v_myname在初始化后持有為約翰的值。此值在可執行部分中被操作。

declare v_myname varchar2(20):= 'john'; begin v_myname := 'Steven'; dbms_output.put_line('my name is: '||v_myname); end;

輸出:

my name is: Steven


(5)將變量作為參數傳遞給PL/SQL子程序參數是由用戶傳遞給程序的值,或由另一個定制程序的程序。

在PL/SQL中,子程序可以采用參數。你可以通過變量作為過程和函數的參數。

在下面的示例中,參數v_date正在通過程序PUT_LINE,這是程序包的一部分,DBMS_OUTPUT。

declarev_date varchar2(30); beginselect to_char(sysdate) into v_date from dual;dbms_output.put_line(v_date); end;
將變量賦值給PL/SQL子程序輸出
可以使用變量來保存作為函數的返回值。
--function to return number of characters in string function num_characters (p_string in varchar2) return integer isv_num_characters integer; beginselect length(p_string) into v_num_characters from dual;return v_num_characters; end; --anonymous block: assign variable to function output declarev_length_of_string integer; beginv_length_of_string := num_characters('oracle corporation');dbms_output.put_line(v_length_of_string); end;



總結

以上是生活随笔為你收集整理的Oracle入门(十四F)之PL/SQL定义变量的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。