学习oracle9i 笔记(2)

       接着上一次的笔记,我在把我一些学习oracle9i的心得继续记录下来,为那些刚刚学习oracle 的人,一些帮助:

  1. oracle中常用的数据类型为:

常用的数据库字段类型如下:

字段类型

中文说明

限制条件

其它说明

CHAR

固定长度字符串

最大长度2000 bytes

 

VARCHAR2

可变长度的字符串

最大长度4000 bytes

可做索引的最大长度749

NCHAR

根据字符集而定的固定长度字符串

最大长度2000 bytes

 

NVARCHAR2

根据字符集而定的可变长度字符串

最大长度4000 bytes

 

DATE

日期(日--年)

DD-MM-YYHH-MI-SS

经过严格测试,无千虫问题

LONG

超长字符串

最大长度2G231-1

足够存储大部头著作

RAW

固定长度的二进制数据

最大长度2000 bytes

可存放多媒体图象声音等

LONG RAW

可变长度的二进制数据

最大长度2G

同上

BLOB

二进制数据

最大长度4G

 

CLOB

字符数据

最大长度4G

 

NCLOB

根据字符集而定的字符数据

最大长度4G

 

BFILE

存放在数据库外的二进制数据

最大长度4G

 

ROWID

数据表中记录的唯一行号

10 bytes ********.****.****格式,*01

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 /
 
触发器已创建
待续.......
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章