oracle資料庫中的基本資料型別

2021-10-03 04:14:27 字數 1993 閱讀 9496

1.字元型:儲存字串資料

char(n): 標識固定長度的字串(無論實際用多少,都會會按最大值占用記憶體,因為要自動補全)

n 的取值: 1varchar(n): 可變字串型別(長度不固定)

允許儲存空字串,sql標準規定的,資料庫必須實現的資料型別

實際空間數< n: 不會像char型別在其最右邊補全空格,減少實際占用的資源

實際空間數》 n:禁止插入資料庫

varchar2(n): 可變字串型別

不允許儲存空字串,轉為null儲存;oracle自定義的資料型別,為保證oracle 資料庫的相容性,建議採用該資料型別而不是varchar

當用作型別:max(n) =4000 (位元組)

當用作變數型別:max(n) = 32767 (位元組)

實際值 >n : 禁止插入資料庫

2.數值型(number):儲存整數、浮點數

varchar2(n): 可變字串型別

n 代表資料位數

精度:數值中有效數字的總位數,整數部分和小數部分最大位數為38

小數字數:小數點之後的有效位數

number(7,2): 7代表整數部分和小數部分的總位數為7,故整數部分實際為5位,小數部分為2位。

number(23): 資料個數為23個,只有整數部分,沒有小數部分

3.日期型:儲存日期、時間

century: 世紀資訊

4.大物件型:儲存大量文字資訊、二進位制檔案

最大容量:4gb

clob: 儲存文字資訊,備註資訊

blob: 儲存二進位制資料、資訊

bfile: 儲存單獨的檔案

5.特殊資料型別

rowid: 標識每一行記錄在資料庫中實體地址,

系統自動新增的一列;只能在資料內部使用;通常為10 個位元組

該列的數值是唯一的,一般沒有排序標準時,rowid作為預設排序標準

不能作為記錄插入資料表

rowid 位置靠後的資料不一定是最後插入的,如果前面有刪除的記錄,系統總是查詢空閒的空間進行插入

null 與空字串: oracle 將空字串視為null

插入null』 』對oracle資料庫而言都為空,是沒有區別的

在比較時判斷某字串是否為空:使用 is null (is not null)

使用where name =』 』 ** 是無法查詢到資料的,因為在儲存時『 』** 已被轉為null

單引號與雙引號:

單引號: 界定字串

表示單引號本身:』』』 賬單 『』』』 顯示結果為:『賬單』

為什麼要使用三個==』== 開頭和三個==』==結尾?

第乙個: 字串界定符

第二個: 轉義符

第三個: 被轉義的字元

(只有單引號才會有此限制使用三個**『**)

雙引號: 標識物件名稱

在oracle中預設**列名** 不允許有空格,但是使用雙引號標識該物件卻可以實現有空格:

alter table order_test rename column place to == 「place name」==

**==注意==**:

在==列名==上施加乙個雙引號,會禁止系統將列名轉為大寫,在寫查詢的時候也必須加雙引號列名。

Oracle資料庫基本資料型別

1.char 定長字串 2.varchar2 變長字串 3.number 可表示整數也可表示小數,number n n表示的是有效數字 number n,m 表示小數佔m位,整數佔n m位 4.date,日期,可以是年月日 yyyy mm dd 也可以是年月日時分秒 yyyy mm dd hh24 ...

資料庫 基本資料操作

通用語法 insert into table name field1,field2,fieldn values value1,value2,valuen 例子 通用語法 select column name,column name from table name where clause 使用 wh...

基本資料庫建立

ddl 建立資料庫 create database 資料庫名字 使用資料庫 use 資料庫名字 刪除資料庫 drop database 資料庫名字 建立表create table 表名 列,engine innodb charset utf8 drop table 表名 alter table 表名...