學習oracle9i 筆記(2)

2021-04-08 22:23:00 字數 2955 閱讀 9188

接著上一次的筆記,我在把我一些學習oracle9i的心得繼續記錄下來,為那些剛剛學習oracle 的人,一些幫助:

oracle中常用的資料型別為:

常用的資料庫字段型別如下:

字段型別

中文說明

限制條件

其它說明

char

固定長度字串

最大長度2000 bytes

varchar2

可變長度的字串

最大長度4000 bytes

可做索引的最大長度749

nchar

根據字符集而定的固定長度字串

最大長度2000 bytes

nvarchar2

根據字符集而定的可變長度字串

最大長度4000 bytes

date

日期(日-月-年)

dd-mm-yy

(hh-mi-ss)

經過嚴格測試,無千蟲問題

long

超長字串

最大長度2g(231-1)

足夠儲存大部頭著作

raw

固定長度的二進位制資料

最大長度2000 bytes

可存放多**圖象聲音等

long raw

可變長度的二進位制資料

最大長度2g

同上 blob

二進位制資料

最大長度4g

clob

字元資料

最大長度4g

nclob

根據字符集而定的字元資料

最大長度4g

bfile

存放在資料庫外的二進位制資料

最大長度4g

rowid

資料表中記錄的唯一行號

10 bytes ********.****.****

格式,*為0或1

nrowid

二進位制資料表中記錄的唯一行號

最大長度4000 bytes

number(p,s)

數字型別

p為整數字,s為小數字

decimal(p,s)

數字型別

p為整數字,s為小數字

integer

整數型別

小的整數

float

浮點數型別

number(38)

,雙精度

real

實數型別

number(63)

,精度更高

以下是乙個我使用中的例子供各位,參考

1.我往乙個表customers中新增了注釋.

sql> comment on table customers

2 is 'customers表儲存了有關客戶的資訊.'

3 ;注釋已建立

2.sql> select * from user_tab_comments where table_name='customers';

table_name

table_type            comments

customers

table                  customers表儲存了有關客戶的資訊。

3.選出與系統時間相同的行。select * from vendition where round(vdate)=round(sysdate)

4.sql> create or replace procedure display

2 is

3 cursor get_pvsell

4 is

5              select * from price;

6 begin

7      for price in get_pvsell

8     loop

9 dbms_output.put_line('<<'||price.pcsell||'>>');

10 end loop;

11 end display;

12 /

過程已建立。

sql> set serveroutput on

sql> execute display;

<<14>>

<<13>>

pl/sql 過程已成功完成。

5. 建立觸發器

sql> create or replace trigger warning

2 after update of oquality

3 on orders

4 for each row when(new.oquality<=0)

5 begin

6      dbms_output.put_line('注意'||:new.lid||'庫存已空,請進貨');

7 end warning;

8 /觸發器已建立

6.sql> create or replace trigger warning

2 after update of oquality

3 on orders

4 for each row when(new.oquality<=0)

5 declare

6      l_lname leechdom.lname%type;

7 begin

8      dbms_output.put_line('注意'||:new.lid||'庫存已空,請進貨');

9      select l.lname into l_lname from orders o,leechdom l where o.lid=:new.lid;

10      dbms_output.put_line('注意'||l_lname||'庫存已空,請進貨');

11 end warning;

12 /

觸發器已建立

待續.......

oracle9i學習筆記之十一(2) 索引

1.建立索引 create index index on table column column 例1 提高對emp表的ename的查詢速度 create index emp ename idx on emp ename 例2.建立基於函式的索引 create index upper idx on ...

oracle9i學習筆記之十一(2) 索引

1.建立索引 create index index on table column column 例1 提高對emp表的ename的查詢速度 create index emp ename idx on emp ename 例2.建立基於函式的索引 create index upper idx on ...

oracle 9i學習之路

oracle基本元件結構圖oracle管理後台儲存樹結構圖 引數檔案 parameter 一 9i之前版本 pfile檔案,文字格式 二 spfile檔案,二進位制格式 口令檔案 password 本地的sysdba,以作業系統認證的形式登入。遠端的sysdba,通過passwordfile認證 儲...