轉帖|使用教程|編輯:莫成敏|2019-11-14 14:02:23.197|閱讀 683 次
概述:對于一般的新手來說,首先要了解什么是PL/SQL?知道了PL/SQL的入門知識,才能更好的使用PL/SQL Developer工具。本文主要介紹了PL/SQL是什么,以及PL/SQL 變量等內容~
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
PL/SQL Developer是一個集成開發環境,它專門針對Oracle數據庫的存儲程序單元的開發所用。開發Oracle應用程序的時候都注重于開發工具簡單易用,代碼簡潔和開發效率高等特點。
對于一般的新手來說,首先要了解什么是PL/SQL?知道了PL/SQL的入門知識,才能更好的使用PL/SQL Developer工具。本文主要介紹了PL/SQL是什么,以及PL/SQL 變量等內容~
PL/SQL是是由甲骨文公司在90年代初開發,以提高SQL的功能。PL/SQL是嵌入在Oracle數據庫中的編程語言之一,是Oracle數據庫對SQL語句的擴展。在普通SQL語句的使用上增加了編程語言的特點,所以PL/SQL就是把數據操作和查詢語句組織在PL/SQL代碼的過程性單元中,通過邏輯判斷、循環等操作實現復雜的功能或者計算的程序語言。
簡而言之,PL/SQL是一門為擴展Oracle中SQL功能的編程語言。
在 PL/SQL Developer 開發工具中打開 SQL commoned 窗口可以進行PL/SQL 開發。 在左上角有輸出框。可以查看由dbms_output.put_line( )得到的結果。
先來個Hello world 展示一下吧!
declare msg varchar(20); begin msg := 'Hello world ! '; dbms_output.put_line(msg); exception -- 單行注釋 /* * 多行注釋 ,這部分是異常處理模塊,可有可無。 */ end;
declare 聲明部分 ——所有變量,游標,子程序,和其他元素
begin - end ; –——程序主體,可執行命令
PL/SQL中常見符號解釋:
|| | 字符串連接符 |
:= | 賦值運算符 |
% | 屬性索引 使用%type可以使變量獲得與字段相同的數據類型,用于不知道給什么類型才合適的變量 |
= | 相等運算符 |
談一種編程語言,肯定要說變量和數據類型呀!
PL/SQL 變量命名 : 由數字,字母,下劃線,美元符號組成。字母開頭。
變量分類:局部變量和全局變量。
變量的常見類型:
varchar2 : 可變長字符串
int : 整數類型
number (precision,scale) :1.、precision表示數字中的有效位,如果沒有指定precision的話,oracle將使用38作為精度;2、 如果scale大于零,表示數字精度到小數點右邊的位數;scale默認設置為0;如果scale小于零,oracle將把該數字取舍到小數點左邊的指定位數。
clob: 用于存儲字符大塊數據在數據庫中 大小為 8 - 128 TB
date : 日期和時間
變量的定義分為局部變量和全局變量。
DECLARE -- Global variables num1 number := 95; num2 number := 85; BEGIN dbms_output.put_line('Outer Variable num1: ' || num1); dbms_output.put_line('Outer Variable num2: ' || num2); DECLARE -- Local variables num1 number := 195; num2 number := 185; BEGIN dbms_output.put_line('Inner Variable num1: ' || num1); dbms_output.put_line('Inner Variable num2: ' || num2); END; END;
SQL的SELECT INTO子句給PL/SQL變量賦值
declare c_id customers.id%type := 1; c_name customers.name%type; c_addr customers.address%type; c_sal customers.salary%type; begin select name,address,salary into c_name,c_addr,c_sal from customers where id = c_id; dbms_output.put_line('Customer '||c_name||' from '||c_addr||' earns '||c_sal); end;
PL/SQL 中的常量:
PI constant number := 3.14;
很不習慣呀,常量和變量名放在前面,數據的類型放在后面。。。
PL/SQL 中的運算符:
PL/SQL 中的條件控制語句:
注意: 每一次 if 結構結束都要用 end if; 這才表示 if 結束。
DECLARE a number(3) := 100; BEGIN IF ( a = 10 ) THEN dbms_output.put_line('Value of a is 10' ); ELSIF ( a = 20 ) THEN dbms_output.put_line('Value of a is 20' ); ELSIF ( a = 30 ) THEN dbms_output.put_line('Value of a is 30' ); ELSE dbms_output.put_line('None of the values is matching'); END IF; dbms_output.put_line('Exact value of a is: '|| a ); END;
CASE 結構:
declare grade char(1) := 'A'; begin case grade when 'A' then dbms_output.put_line('A'); when 'B' then dbms_output.put_line('B'); else dbms_output.put_line('NO'); end case; end;
PL/SQL 中的循環控制語句:
舉例說明:
DECLARE x number := 10; BEGIN LOOP dbms_output.put_line(x); x := x + 10; IF x > 50 THEN exit; END IF; END LOOP; -- after exit, control resumes here dbms_output.put_line('After Exit x is: ' || x); END;
DECLARE a number(2) := 10; BEGIN WHILE a < 20 LOOP dbms_output.put_line('value of a: ' || a); a := a + 1; END LOOP; END;
DECLARE a number(2); BEGIN FOR a in 10 .. 20 LOOP -- 10 .. 20 表示10-20 全包含 dbms_output.put_line('value of a: ' || a); END LOOP; END;
常用的操作字符串的函數:
UPPER(x) :x轉換為大寫字母,并返回該字符串
TRIM([trim_char FROM) x) : 從左側和右側修剪x字符的空格
SUBSTR(x, start [, length]) : 返回x的一個子開始于由start指定的位置。可選長度為子字符串
CHR(x) : 返回字符 x 的 ASCII 值
CONCAT(x, y) : 連接字符串x和y,并返回附加的字符串
INITCAP(x) : 每個單詞的首字母x中轉換為大寫,并返回該字符串
INSTR(x, find_string [, start] [, occurrence]) :搜索find_string在x中并返回它出現的位置
INSTRB(x) : 返回另一個字符串中字符串的位置,但返回以字節為單位的值
LENGTH(x) : 返回x中的字符數
LOWER(x) : 在x轉換為小寫字母,并返回該字符串
LTRIM(x [, trim_string]) : 從x的左修剪字符
想要購買PL/SQL Developer正版授權,或了解更多產品信息請點擊
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: