PL SQL之基礎語法

2021-07-25 04:53:36 字數 3182 閱讀 5663

declare --

說明部分(變數說明、游標申明、例外說明)

begin --

語句序列(dml語句)

exception --

例外處理語句

end; /

(1).定義基本變數

(2).型別:char,varchar2,date,number,boolean,long

(3).舉例:var1 char(15);

married boolean :=true;

psal number(7,2);

(4).eg:

--使用基本變數型別

declare

--

定義基本變數型別

--

基本資料型別

pnumber number(7,2);

--字串變數

pname varchar2(20);

--日期變數

pdate date;

begin

pnumber :=1;

dbms_output.put_line(pnumber);

pname :='tom';

dbms_output.put_line(pname);

pdate :=sysdate;

dbms_output.put_line(pdate);

--計算明天的日期

dbms_output.put_line(pdate+1);

end; /

(1).引用型變數

(2).舉例

my_name emp.ename%type;

(引用emp表中ename列的型別作為變數my_name的型別,並且變數的型別始終與其保持一致)

(3).eg:

set serveroutput on

declare

pename emp.ename%type;

psal emp.sal%type;

begin

select ename,sal into pename,psalfrom emp where empno=7839;

dbms_output.put_line(pename||'

的薪水是'||psal);

end; /

tips

:賦值的時候用「:=」,在select語句中可以用關鍵字into,連線字串用||。

(1).記錄型變數

(2).舉例:emp_rec emp%rowtype;(記錄型變數代表的是表中的一行資料,以一整行的資料作為乙個變數型別,把記錄型變數理解為乙個陣列,而在這個陣列中的每乙個元素代表這一行中的每一列資料)

(3).記錄型變數分量的引用:emp_rec.ename :=』adams』;

(4).eg:

set serveroutput on

declare

emp_rec emp%rowtype;

begin

select * into emp_rec from empwhere empno=7839;

dbms_output.put_line(emp_rec.ename||'

的薪水是'||emp_rec.sal);

end; /

(1).if條件then語句1;

語句2;

end if;

(2).if條件then語句序列1;

else 語句序列2;

end if;

(3).if條件then語句;

elsif語句then語句;

else

語句;

end if;

(4).eg:

set serveroutput on

accept num prompt'

請輸入乙個數字';

declare

pnum number := #

begin

if pnum = 0 thendbms_output.put_line('

您輸入的數字是0');

elsif pnum = 1 thendbms_output.put_line('

您輸入的數字是1');

elsif pnum = 2 thendbms_output.put_line('

您輸入的數字是2');

else dbms_output.put_line('

其他數字');

end if;

end; /

tips

:accept(從鍵盤接收) num(變數名) prompt(提示)'請輸入:'

num的含義是位址值,定義儲存時在num前加&;

=  --

判斷,:= --賦值。

(1).while total<=25000 loop …

total := total+salary;

end loop;

eg:set serveroutput on

declare

pnum number := 1;

begin

while pnum <=10 loop

dbms_output.put_line(pnum);

pnum:= pnum + 1;

end loop;

end; /

(2).loop

exit[when條件];…

end loop;

eg:set serveroutput on

declare

pnum number := 1;

begin

loop

exit when pnum>10;

dbms_output.put_line(pnum);

pnum := pnum + 1;

end loop;

end; /

(3).for i in 1..3 loop(in後邊的必須連續)

語句序列;

end loop;

eg:set serveroutput on

declare

pnum number := 1;

begin

for pnum in 1..10 loop

dbms_output.put_line(pnum);

end loop;

end; /

PL SQL基礎語法

1.分支結構 pl sql中,使用if關鍵字作為分之結構的程式起始段。總體有以下幾種分支結構 1 if condition then statement end if 2 if condition then statement else then statement end if 3 if cond...

PLSQL語法基礎

變數普通變數宣告方式示例 created on 2019 7 17 by zhou declare v name varchar 20 v sal number v addr varchar 20 begin v name 張三 v sal 10000 select 長沙 into v addr f...

PL SQL 概述與基礎語法

第乙個pl sql程式 開啟輸出開關 set serveroutput on declare 說明部分 變數,游標或者例外 begin 程式體 dbms output.put line helllo world end dbms output 程式包 檢視程式包的結構 desc dbms outpu...