--------------------------------------------数据基本类型-------------------------------------
数据类型 参数 描述 例如
-------------------------------------------------------------------字符数据类型-----------------------------------------------------
char(n) n=1---2000字节 定长字符串,n字节长;如果不指定长度,为1个字节长度;一个汉字占两个字节
在oracle中尤其是存储过程和包中,尽量少用char类型.采用char数据类型存储的时候,不足8位的会补零的.
---------------------------------------------------------------------------------------------------------------------------
varchar(n) 定长字符串
----------------------------------------------------------------------------------------------------------------------------------
varchar2(n) n=1--4000字节 可变字符串,具体定义时指明最大长度n(如果数据长度没有达到最大值n,oracle会根据数据大小自动
调节字段长度;如果数据有空格,oracle会自动删掉)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
long 可变长字符列,最大长度限制2GB,用于不需要作为字符串搜索的长串数据;如果用字符串搜索,
就用varchar2(n).
-------------------------------------------------------------------数值数据类型--------------------------------------------
number(m,n) m=1-38 可变长的数据列;允许0,正值,负值;m是所有有效数字的位数,n是小数点以后的位数;
n=-84到127 number(5,2),这个数字,的最大值是999.99;如果数值超过了位数限制,就会被截取
多余的位数。例如:number(5,2),输入575.316,而真正保存到字段中的数值是575.32;
number(3,0),输入575.316,真正保存的数据是575.
------------------------------------------------------------日期时间数据类型----------------------------------------
date 用于存储表中日期和时间数据
timestamp
------------------------------------------------------------------------------------------------------------
clob
在oracle中,有4个大对象(lobs)类型可用,分别是blob,clob,bfile,nclob。 下面是对lob数据类型的简单介绍。
blob:二进制lob,为二进制数据,最长可达4GB,存贮在数据库中。
clob:字符lob,字符数据,最长可以达到4GB,存贮在数据库中。
bfile:二进制文件;存贮在数据库之外的只读型二进制数据,最大长度由操作系统限制。
nclob:支持对字节字符集合(nultibyte characterset)的一个clob列。
---------------------------------------------------------------------varchar2比较大小--------------------------------------
假如表中有一个字段是VARCHAR2类型(名为NO),里面存储着'01','02'到'10'十条记录。
1.要想选定其中'03'到'06'的相应记录的话
....where NO >= '03' and NO <='06'.....
2.要想选取,'05'以下的纪录
....where NO <='05'.....
3.可以用to_number(no)>=3 and to_number(no)<=6.
------------------------------------------------------------------ORACLE如何判断列里面值的长度----------------------
select I_CODE from tablename
where length(I_CODE)=4
----------------------------------------------------------Oracle的空值(null)判断-------------------------------------
Oracle
替换null: nvl(arg,value)
如: select
nvl(sum(score),0) average
from gc_inspection gi
where gi.userid=30011
与null比较: is not null,is null
如 select * from orders where price is null ----price等于null
如: select * from orders where price is not null -------price不等于null
---------------------------------------------------oracle select--------------------------
-------------------------------------------------------------------字符数据类型-----------------------------------------------------
char(n) n=1---2000字节 定长字符串,n字节长;如果不指定长度,为1个字节长度;一个汉字占两个字节
在oracle中尤其是存储过程和包中,尽量少用char类型.采用char数据类型存储的时候,不足8位的会补零的.
---------------------------------------------------------------------------------------------------------------------------
varchar(n) 定长字符串
----------------------------------------------------------------------------------------------------------------------------------
varchar2(n) n=1--4000字节 可变字符串,具体定义时指明最大长度n(如果数据长度没有达到最大值n,oracle会根据数据大小自动
调节字段长度;如果数据有空格,oracle会自动删掉)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
long 可变长字符列,最大长度限制2GB,用于不需要作为字符串搜索的长串数据;如果用字符串搜索,
就用varchar2(n).
-------------------------------------------------------------------数值数据类型--------------------------------------------
number(m,n) m=1-38 可变长的数据列;允许0,正值,负值;m是所有有效数字的位数,n是小数点以后的位数;
n=-84到127 number(5,2),这个数字,的最大值是999.99;如果数值超过了位数限制,就会被截取
多余的位数。例如:number(5,2),输入575.316,而真正保存到字段中的数值是575.32;
number(3,0),输入575.316,真正保存的数据是575.
------------------------------------------------------------日期时间数据类型----------------------------------------
date 用于存储表中日期和时间数据
timestamp
------------------------------------------------------------------------------------------------------------
clob
在oracle中,有4个大对象(lobs)类型可用,分别是blob,clob,bfile,nclob。 下面是对lob数据类型的简单介绍。
blob:二进制lob,为二进制数据,最长可达4GB,存贮在数据库中。
clob:字符lob,字符数据,最长可以达到4GB,存贮在数据库中。
bfile:二进制文件;存贮在数据库之外的只读型二进制数据,最大长度由操作系统限制。
nclob:支持对字节字符集合(nultibyte characterset)的一个clob列。
---------------------------------------------------------------------varchar2比较大小--------------------------------------
假如表中有一个字段是VARCHAR2类型(名为NO),里面存储着'01','02'到'10'十条记录。
1.要想选定其中'03'到'06'的相应记录的话
....where NO >= '03' and NO <='06'.....
2.要想选取,'05'以下的纪录
....where NO <='05'.....
3.可以用to_number(no)>=3 and to_number(no)<=6.
------------------------------------------------------------------ORACLE如何判断列里面值的长度----------------------
select I_CODE from tablename
where length(I_CODE)=4
----------------------------------------------------------Oracle的空值(null)判断-------------------------------------
Oracle
替换null: nvl(arg,value)
如: select
nvl(sum(score),0) average
from gc_inspection gi
where gi.userid=30011
与null比较: is not null,is null
如 select * from orders where price is null ----price等于null
如: select * from orders where price is not null -------price不等于null
---------------------------------------------------oracle select--------------------------