Oracle筆記,PL SQL簡單語句塊 變數定義

2021-09-01 10:22:24 字數 3061 閱讀 8960

1、簡單sql語句,hellworld示例
--輸出資訊
begin
dbms_output.put_line('oracle hello world!');
end;
2、變數的定義、使用
--定義變數
declare
sname varchar2(20);
begin
sname := 'jack';
dbms_output.put_line(sname);
end;
--常用型別
declare
snum number(1);
scount binary_integer := 0;
ssal number(7, 2) := 5000.00;
sdate date := sysdate;
spi number(3, 2) := 3.14;
svalid boolean := true;
sname varchar2(20) := 'jackson';
begin
dbms_output.put_line('sname:' || sname);
dbms_output.put_line('scount:' || scount);
dbms_output.put_line('ssal:' || ssal);
dbms_output.put_line('sdate:' || sdate);
dbms_output.put_line('spi:' || spi);
--dbms_output.put_line('svalid:' || svalid);
dbms_output.put_line('sname:' || sname);
end;
--定義table變數型別
declare
type type_table_emp_empno is

table

of emp.empno%type index

by binary_integer;

empnos type_table_emp_empno;
begin
empnos(0) := 7369;
empnos(2) := 6789;
empnos(-1) := 6543;
dbms_output.put_line(empnos(-1));
end;
--定義record變數型別
declare
type type_record_dept is record (
deptno dept.deptno%type,
dname dept.dname%type,
loc dept.loc%type
);
temp type_record_dept;
begin
temp.deptno := 56;
temp.dname := 'software';
temp.loc := 'gz';
dbms_output.put_line(temp.deptno || ' ' || temp.dname  || ' ' || temp.loc);
end;
--使用rowtype宣告record變數
declare
temp dept%rowtype;
begin
temp.deptno := 57;
temp.dname := 'it';
temp.loc := 'sz';
dbms_output.put_line(temp.deptno || ' ' || temp.dname  || ' ' || temp.loc);
end;
--sql語句完成變數賦值
declare
v$sal emp.sal%type;
v$ename emp.ename%type;
begin
select sal, ename into v$sal, v$ename from emp where rownum = 1;
dbms_output.put_line(v$sal || ' ' || v$ename);
end;
--sql語句完成rowtype變數賦值
declare
v_row_emp emp%rowtype;
begin
select * into v_row_emp from emp where empno = 7698;
dbms_output.put_line(v_row_emp.sal || ' ' || v_row_emp.ename);
end;
--sql語句完成變數插入資料
create

table dept2 as

select * from dept;

declare
deptno dept.deptno%type := 57;
dname dept.dname%type := 'software';
loc dept.loc%type := 'gz';
begin
insert into dept2 values(deptno, dname, loc);
commit;
end;
select * from dept2;

oracle學習筆記 PL SQL

pl sql 它是一種過程化語言,在pl sql中可以使用if語句或是log語句,以實現控制程式的執行流程,甚至可以定義變數,以至在語句之間傳遞資料資訊,這樣pl sql語言就能夠實現操控程式處理的細節,因此使用pl sql語句可以實現比較複雜的業務邏輯,它是oracle的專用語言,它是對標準sql...

oracle筆記(九)PL SQL程式設計

pl sql 是oracle 的專用語言,它對標準的sql 語言的擴充套件.sql 語句可以巢狀在pl sql 語言中,並結合處理語句。pl sql 程式結構 使用了程式塊的結構組織的 最簡單的程式塊是一種被稱為 匿名塊 的程式塊,匿名塊是指不會被oracle 儲存並且不能夠重用程式塊。pl sql...

Oracle筆記 十 PL SQL儲存過程

or replace 建立或替換,如果存在就替換,不存在就建立create or replace procedure piscursor cisselect from dept2 for update beginfor row record in c loopif row record.deptno...