oracle PL/SQL
1定義常量
??? 常量名? constant 類型標識符 [not null]:=值
2基本數據類型
Number???? 數字型
Int??????? 整數型
Pls_integer??? 整數型,產生溢出時出現錯誤
Binary_integer 整數型,標識帶符號的整型
Char???????? 定長字符 最大255
Varchar2??? 變長字符型,最大2000
Long???????? 變長字符,最大2G
Data???????? 日期型
Boolean??? 布爾型(True,False,Null)
3基本數據類型定義
變量名 類型標識符 [not null]:=值
4復合數據類型
1.使用%type定義變量
??? mydata tempuser.test.curr%type
??? 表示定義了一個和數據表test中和curr字段類型一致
2.記錄類型數據類型
?? type MyRecord is record(a int, b data);
?? srecord MyRecord ;
3.使用%rowtype可以得到一個表的結構
?? mytable text%rowtype
?? 得到和text記錄同樣的表結構
5定義一維表類型變量
type 表類型 is table of 類型 index by binary_integer;//定義類型
表變量名? 表類型;//定義值
6.||連接字符串運算符
7.定義好表變量可以用count.delete.first.last.next.exists.prior來操作
8表達式
+-*/?? **乘方……
9函數
? To_char 將其他類型轉換為字符型
? To_date 將其他類型轉換為日期型
? To_number 將其他類型轉換為數值類型
10 流程控制
? 1)if 條件 then 語句段 end if;
? 2)if 條件 then 語句段1 else 語句段2 end if ;
11循環控制
?? 1)loop 循環語句段
????????? if退出條件 then
???????????? exit;
????????? end if;
????? end loop
?? 2) loop 循環語句
???????? exit when 退出條件
????? end loop;
?? 3)while 條件 loop
?????????? 執行語句段
????? end loop
?? 4)for 循環變量 in 循環下界..循環上界 loop
????????? 循環處理段
???? end loop;
12 事務處理
????? commit 提交事務命令
????? 用 set auto on 打開自動提交事物
????? 用 set auto off 關閉自動提交
???? rollback 事物回滾命令
???? serverpoint 保存點命令
????????? 創建保存點: savepoint 保存點名;
????????? 回滾保存點: rollback to 保存點名;
13 游標
?? 1.定義游標
???? cursor 游標名 is select語句;
?? 2.打開游標
???? open 游標名
?? 3.提取游標數據
???? fetch 游標名 into 變量1,變量2。。。。;
??? 或 fetch 游標名 into 記錄型變量
?? 4.關閉游標
14 過程
?? 1.創建過程
????? create or replace procedure 過程名 as
?????????? 聲明語句段;
????? begin
?????????? 執行語句段;
????? exception
?????????? 異常處理語句段
????? end;
?? 2.帶參數的過程
???? in 參數 :讀入參數,主程序向過程傳遞參數
???? out參數:讀出參數,過程向主程序傳遞參數。
???? in out參數:雙向參數
15 序列
??? nextval
總結
以上是生活随笔為你收集整理的oracle PL/SQL的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 下基于jrtplib库的实时
- 下一篇: 简简单单日赚200元,当日结算