數據類型
一、字符型數據
1,1、固定長度: char(n)?、nchar(n)
備注:nchar是按unicode格式存放數據的,nchar存儲漢字比較多,其中n為字符長度,char類型n的最大值為2000,nchar中n ? ? ? ? ? ? ? ? ? ? ? ? ? ??的最大值為1000
1.2、可變長度:varchar(n)、varchar2(n)、nvarchar2(n)
備注:varchar是符合工業標準的數據類型,varchar(2)是oracle在varchar基礎上定義的,varchar2不能存儲空字符串,會將空 ? ? ? ? ? ? ? ? ? ? ? ? ? ?字符串轉為null存儲,nvarchar2是按unicode格式存放數據的,其中n為字符長度,varchar2類型n的最大值為4000, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??nvarchar2中n的最大值為2000
二、數值型數據
2.1、number(p,s):其中p是表示有效數 ,s可以為負數字,s表示小數點后面的位數
2.2、float(n) :主要用于存儲二進制數據,n表示二進制的位數是1到126位
三、日期型數據
3.1、date :精確到秒,存儲范圍:公元前4712年1月1日到公元9999年12月31日,
備注:date 中包含的信息有:century(世紀信息)、year(年份信息)、month(月份信息)、day(天數信息)、hour(小時信息)、 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???minutes(分鐘信息)、second(秒數信息),yyyy代表年,mm代表月,dd代表當月中第幾天,hh代表小時,mi代表分鐘, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ss代表秒
3.2、 timestamp(時間戳) :精確到毫秒
四、lob類型數據
blob:存放4G的數據,以二進制存放數據
clob :存放4G的數據,以字符串的形式存放
bfile:作為單獨文件存在的二進制數據
五、oracle中的特殊數據
5.1、rowid
rowid用于標識數據物理地址的列,由數據庫自動添加,rowid位置靠后的記錄不一定是晚插入的數據,oracle總是查找空閑的 ? ? ? ? ? ? ? ? ? ??空間進行插入動作
5.2、null與空字符串
oracle中將空字符串視為null,在oracle中判斷某列的值是否為空,不能將該列的值與空字符串比較,而是使用is null
select * from hh where name is null;
5.3、單引號與雙引號
oracle中,單引號用于界定字符串,雙引號用于標識對象名稱
5.3.1、單引號若要存儲,則要轉義
insert into hh values(2,'''David');?其中第一個單引號為字符串界定符,第二個為轉義符,第三個則為要存儲的單引號
5.3.2、雙引號,雙引號主要作用有
1、用作特殊的列名,若列名中間有空格,要用到雙引號
alter table hh rename column name to "user name";
2、控制列名的大小寫形式,一般情況下,oracle會自動將所有列名改為大寫形式,要顯示為小寫,可以用雙引號alter table hh rename column age?to "age";
備注:用雙引號創建或修改的列,查詢時也必須帶雙引號,否則會報錯
select "age" from hh;