Oracle資料庫操作。

2021-08-16 04:35:15 字數 2977 閱讀 2315

物件導向告一段落,重新撿起來sql server的知識,幸好資料庫語言都差不多,讓我重新學習oracle的時候並沒有想象中的費勁,只需要複習起來舊知識,再融合oracle特有的語法就足矣。

廢話不多說,進入正題,此文章按照網上的資料+個人理解編寫,盡量做到通俗易懂,以便日後忘了能夠見文知意。

注:sql語句本身不區分大小寫,但是出於可讀性的目的,我們通常會將sql語句的關鍵字全部大寫,非關鍵字小寫。

number(p,s)

-p     表示數字的總位數。

-s     表示小數點後面的位數。

例:    如有sal列,定義如下

sal number(6,2)
表示sal列中的資料,整數字為4位,小數字為2位,最大值取9999.99。

char(n)

-n     表示占用的位元組數。最大長度是2000位元組。

例:ename列定義如下

ename char(20)
表示ename列中最多可儲存20個位元組的字串,並且占用的空間是固定的20位元組。

可變長度的字元型別,使用方式參考如上

根據其中儲存的資料長度,占用的空間是變化的。

與char的優缺點:

char:        固定位元組長度,讀取速度快,占用空間大。

varchar2:可變的位元組長度,讀取速度慢,占用空間小。

char與varchar2之間具體看專案要求進行取捨、

用於定義日期時間的資料,長度為7個位元組。

預設格式是:dd-mon-rr,例如:11-apr-71

例:有列horedate定義如下

hiredate date
表示hiredate列中存放的是日期資料。

語法格式:

create table mytable(

id number(4);

name varchar(20)

)

上述**建立了乙個表,其中有兩個列,id列值為4位數字,name列為20位元組的字串。

在此不贅述,沒有特殊用法。

刪除整個表的操作。

create table mytable(

*** char(1) default'm'

)

上述**表示建立了乙個表,表裡有乙個***列,列的預設值為m。(字串區分大小寫)

create table mytable(

*** char(1) not null

)

上述**表示建立了乙個表,表裡有乙個***列,列的值不能為空。

1.修改表名(rename)

rename 舊表名 to 新錶名
2.修改表結構(alter)

1)新增新的字段(列)    給表增加字段可以使用alter table 的add子句實現

語法

alter table 表名 add (列 資料型別)

例:給表mytable增加一列hiredate,並設定預設值為當前日期。

alter table mytable (hiredate date sysdate)
2)刪除字段 (列)    給表刪除字段可以使用alter table的drop子句實現。

alter table 表名 drop 列名
3)修改字段(列)    修改字段烈性可以使用alter table的modify子句實現

可以修改欄位的型別,長度,預設值,是否為空。

修改表結構都應當

避免在表中有資料以後進行。

若表中有資料,修改表中字段時盡量不要修改型別。

若修改長度,盡量增大,避免縮小,否則可能導致失敗。

語法

alter table 表名 modify(

列名 資料型別 約束&預設值

)

dml是對錶中的資料進行的操作。

dml伴隨事物控制(tcl)

dml包含操作(

增、刪、改)

語法

insert into 表名

(列名)

values

(值)

注:

列名可無序,不填預設為給所有列插入資料,對應的值必須對應填寫的列進行插入,如為填寫列,則按照表中的列順序進行填寫。

如插入的列有時間日期型,需要考慮日期的格式。

預設的日期格式"dd-mon-rr"

可以自定義日期格式,用to_date函式轉換為日期型別的資料。

例1: 使用預設的日期格式插入記錄

insert into mytable

(birth)

values

('01-sep-03')

例2:使用自定義日期格式插入記錄

insert into matable

(birth)

values

(to_date('2009-09-01','yyyy,mm-dd'))

例:

update mytable set salary = 6000 where id = 1

注:修改表中資料要使用

where新增過濾條件,這樣才回只將滿足條件的記錄進行修改,否則則修改全表中的所有資料。可以一次性修改多列(字段)

刪除表中資料,刪除資料通常也要新增

where 語句來限定要刪除的資料的條件,否則就是清空表操作。

例:

delete form mytable where id = 1

注:

字串區分大小寫!!

oracle資料庫操作

1 oracle安裝目錄,配置目錄 通過環境變數查詢 set grep oracle 網路配置在 oracle home network admin tnsnames.ora 2 oracle資料庫 select from v database 3 oracle表 4 oracle 工具 linux...

oracle資料庫操作

1 建表空間 create tablespace ccpbs datafile home oracle bossdata ora data ccpbs index01.dbf size 100m reuse default storage initial 5000k next 5000k pctin...

Oracle資料庫操作

執行匯入命令 匯入時需要用準備工作中建立的新使用者,如 使用者名稱abc,密碼abc imp 使用者名稱 密碼 file dmp 檔案路徑 log 輸出日誌路徑 full y ignore y imp abc abc file home oracle iom.dmp log home oracle ...