Oracle資料庫概念和PL SQL語句塊格式

2021-10-23 16:36:37 字數 2968 閱讀 8721

匿名pl/sql語句塊

sql*plus工具

oracle資料庫,有以下幾個重要的概念:

pl/sql 語句塊基本結構:

塊頭區

is 宣告區

begin

執行區exception

異常區end

格式:

program_type program_name ([parameter_name in / out/ in out type specs, ] ....)

[return datatype]

program_type: function、procedure、package

引數分三類:in引數,表示將引數傳遞給程式單元;out引數,該引數返回給該程式的呼叫者;in out為雙向引數

specs: 可以包含關鍵字 not null

對於function,必須返回數值,函式可以在其執行部分的任意位置使用return 關鍵字;

格式:

var_name [constraint] datatype [(constraint)] [:= value];
:= 為賦值運算子

例子:

## 宣告乙個變數

var_name varchar(20

);## 宣告乙個帶約束的變數

var_name varchar(20

)not

null

;## 宣告乙個常量且賦初始值

var_name constant varchar(20

) :=

'test'

;## 宣告乙個變數且使用default關鍵字為變數賦值

var_name integer

default

3.1415926

;

即程式邏輯部分

格式:

exception

when exception_name1

then

hand error1;

when exception_name2

then

hand error2;

when others

default error handling;

例子:

create or replace function p_test(f float)

is var_name varchar2(20);

exception1 exception;

begin

statement1;

beging

statement2;

raise exception1;

exception

when exception1

then

hand error1;

end statement3;

exception

when others

error handling;

end

就是沒有塊頭區,直接從宣告區開始

例如:

declare

var_first_name varchar2(20)

; var_last_name varchar2(20)

;begin

select first_name, last_name

into var_first_name, var_last_name

from employee

where employee_id =16;

dbms_output.put_line(

'var_first_name is : '

||var_first_name )

; dbms_output.put_line(

'var_last_name is : '

||var_last_name )

;exception

when no_data_found then

dbms_output.put_line(

'no data find');

end;

dbms_output.put_line將資料庫伺服器返回的資料顯示在sql*plus上面。

也可以使用替代變數增加程式的靈活性,替代變數的符號是:「&」或「&&」,改寫上面的例子如下:

declare

var_first_name varchar2(20)

; var_last_name varchar2(20)

; var_employee_id number :=

&b_employee_id

begin

select first_name, last_name

into var_first_name, var_last_name

from employee

where employee_id = var_employee_id;

dbms_output.put_line(

'var_first_name is : '

||var_first_name )

; dbms_output.put_line(

'var_last_name is : '

||var_last_name )

;exception

when no_data_found then

dbms_output.put_line(

'no data find');

end;

執行程式時,會先提示輸入替代變數的值。

對於pl/sql程式,分號表示語句結束,而使用』.'號,表示整個語句塊的結束,也可以省略。

按回車鍵後,語句塊不會執行,必須使用「/」符號執行pl/sql語句塊。

oracle資料庫概念

oracle由兩個主要元件構成,例項和資料庫.例項元件是啟動初始化的一組作業系統程序和記憶體結構 資料庫元件是指的用於資料儲存和資料庫操作的物理檔案。1.oracle提供了許多可在與資料庫互動時使用的工具,最常見的有 用於安裝和刪除的oracle軟體oui oracle universal inst...

oracle中資料庫和例項的概念

什麼是資料庫,其實很簡單,資料庫就是儲存資料的一種媒介。比如常用的檔案就是一種,在oracle10g中,資料的儲存有好幾種。第一種是檔案形式,也就是在你的磁碟中建立一批檔案,然後在這些檔案中儲存資訊。第二種就是磁碟陣列形式,這個是什麼意思呢,這個就是說明資料庫不是存放為某個檔案,而是把乙個或者多個磁...

oracle概念 例項和資料庫

資料庫程式,一般都要使用計算機的記憶體和持久儲存裝置 例如磁碟 進行操作。磁碟提供了持久儲存和儲存大量資訊的空間。但是,從磁碟中獲得資訊要比從記憶體中獲取資訊的速度慢很多,因此,很多資料庫引擎利用記憶體來快取資訊,從而加快資料的訪問速度。資訊如何儲存和從什麼地方獲取對於終端查詢使用者來說是透明的,但...