1.查看當(dāng)前數(shù)據(jù)庫(kù)的實(shí)例名: show parameter instance_name 2.數(shù)據(jù)表結(jié)構(gòu)的相關(guān)操作 創(chuàng)建數(shù)據(jù)表: create table 表名(列1 數(shù)據(jù)類型1,,列2 數(shù)據(jù)類型2…….) tablespace 表空間名 修改數(shù)據(jù)表: l 添加新列: alter table 表名 add (新添加的列名 數(shù)據(jù)類型 ) l 修改和刪除已有列:alter table 表名 modify(列名 數(shù)據(jù)類型); alter table 表名 drop column 列名; l 重命名列:alter table 表名rename column 舊列名 to 新列名 l 將表轉(zhuǎn)移到另一個(gè)表空間中: alter table 表名 move tablespace 新的表空間 刪除數(shù)據(jù)表: 當(dāng)一個(gè)數(shù)據(jù)表沒(méi)有存在的意義時(shí),則需要執(zhí)行刪除操作 drop table 命名 有時(shí),,由于某些約束的存在,,例如,當(dāng)前表的主鍵被其他表用作外鍵,,會(huì)導(dǎo)致無(wú)法成功刪除,。利用cascade constraints選項(xiàng)可以將約束同時(shí)刪除,從而保證drop table 命令一定能夠成功執(zhí)行,。 3.利用user_tab_cols根據(jù)列名獲得所在表的信息 例如: Select table_name from user_tab_cols wherelower(column_name)='student_id'; 4.更新數(shù)據(jù) 向數(shù)據(jù)表插入數(shù)據(jù): insert into 表名(列名1,,列名2,列名3...列名n) values(值1,,值2,,值3...值n); 更新數(shù)據(jù): 更新單列:update 表名 set 列=新值; 更新多列:update 表名 set 列1=新值1,,列2=新值2,... 注意事項(xiàng):對(duì)于update操作,,最容易被忽視的就是添加where條件,。上面兩條語(yǔ)句是很危險(xiǎn)的。因?yàn)闆](méi)有添加任何限制條件,,因此Oracle將更新表中的所有數(shù)據(jù),。而實(shí)際應(yīng)用中,往往只需要更新部分?jǐn)?shù)據(jù),。因此,,對(duì)于重要數(shù)據(jù)的update操作,首先添加where關(guān)鍵字是一個(gè)好的習(xí)慣,,盡管有時(shí)候并不需要過(guò)濾條件,。例:update 表名 set 列=新值 where...; 5.刪除數(shù)據(jù) delete 操作用于刪除表中數(shù)據(jù)。除了delete語(yǔ)句之外,,truncate命令同樣可以刪除表中數(shù)據(jù),。 delete from 表名 因?yàn)閯h除動(dòng)作的作用對(duì)象為記錄級(jí)別,因此無(wú)需指定列名信息,。 delete from students where student_id>10;如同update 語(yǔ)句,,在使用delete語(yǔ)句時(shí),添加where字句是一個(gè)好的習(xí)慣,。這樣可以避免刪除表中的所有數(shù)據(jù),。 truncate table語(yǔ)句與delete 語(yǔ)句是有本質(zhì)區(qū)別的。Delete語(yǔ)句與insert,、update語(yǔ)句同屬于DML——數(shù)據(jù)操作語(yǔ)言的范疇,,當(dāng)數(shù)據(jù)修改之后,可以通過(guò)回滾操作,,忽略所做的數(shù)據(jù)修改,。而truncatetable語(yǔ)句則是屬于DDL——數(shù)據(jù)定義語(yǔ)言的范疇,當(dāng)數(shù)據(jù)被刪除之后,,無(wú)法回滾,。 通過(guò)truncate table命令刪除表students的數(shù)據(jù)。 Truncate table students; 6.Oracle中的字符型及處理方法 ü 固定長(zhǎng)度字符串char(n) ü 可變長(zhǎng)度字符串varchar(n) 當(dāng)實(shí)際字符串的長(zhǎng)度不足時(shí),,不會(huì)使用空格進(jìn)行填充 ü varchar2(n) 與varchar(n)類型一樣是可變長(zhǎng)度字符串類型,,最大長(zhǎng)度都為4000。Oracle在工業(yè)標(biāo)準(zhǔn)之外,,自定義了該類型,。使用varchar2(n)可以獲得Oracle向后兼容性的保證。 ü 變量聲明中的字符串類型 3種字符串類型——char(n)、varchar(n),、varchar2(n),都可以用于聲明變量,,但是,最大長(zhǎng)度均為32767 ü 字符型處理: l 返回字符串的小寫和大寫形式——lower()和upper()函數(shù) l 單詞首字符大寫——initcap() 不管字符是全大寫還是全小寫形式,,經(jīng)過(guò)initcap()函數(shù)轉(zhuǎn)變后,,都為首字符大寫,其余小寫的形式,。 l 返回字符串長(zhǎng)度——length() 例:select length(‘12345’) from dual; l 截取字符串——substr()函數(shù) substr(string,start_index,length) l 刪除字符串左側(cè)和右側(cè)空格和兩側(cè)空格——ltrim()和rtrim()和trim() 例:select ltrim(‘ 000’) new_str from dual; l 串聯(lián)字符串——concat()函數(shù) 將兩個(gè)字符串進(jìn)行連接 l 反轉(zhuǎn)字符串——reverse()函數(shù) 例:select reverse(‘a(chǎn)bcdef’) from dual; 輸出結(jié)果為:fedcba 7.Oracle中的數(shù)值型及處理方法 2 將ASCII碼轉(zhuǎn)換為字符——chr()函數(shù) select chr(65) character from dual;將輸出大寫字符A 2 格式化數(shù)值——to_char()函數(shù) to_char(原數(shù)值,,格式) 其中格式參數(shù)由一系列的字符組成。常用字符包括:0,、9,、,,、FM,、$、L,、C、X 8.Oracle中的日期型及處理方法 獲得當(dāng)前日期——sysdate() select sysdatefrom dual; 為日期加上特定月份——add_months()函數(shù) 例如為當(dāng)前加一個(gè)月:selectadd_months(sysdate,1) new_date from dual; 返回特定日期所在月的最后一天——last_day()函數(shù) 將日期轉(zhuǎn)換為字符串——to_char()函數(shù) to_char()函數(shù)不僅可以用于數(shù)值的格式化,,同樣可以對(duì)日期進(jìn)行格式化,。to_char()函數(shù)格式化日期的使用方法如下所示。to_char(日期,,格式) 例子:selectto_char(sysdate,’YYYY-MM-DD’) new_date from dual; 對(duì)于to_char()函數(shù)來(lái)說(shuō),,所能使用的格式也是Oracle預(yù)定義的。如下表: To_char()函數(shù)中,,用于日期的格式信息
一. Oracle中的復(fù)雜數(shù)據(jù)處理 1. avg()函數(shù)用于獲得一組數(shù)據(jù)的平均值,,該函數(shù)只能作用于數(shù)值型。 2. sum() 同樣只能應(yīng)用于數(shù)值型 3. count()函數(shù)用于統(tǒng)計(jì)記錄數(shù)目,。有三種情形 l 統(tǒng)計(jì)單列 列名作為count()函數(shù)的參數(shù),。當(dāng)列值不為空時(shí),將計(jì)數(shù)1,,否則,,將計(jì)數(shù)0 l 統(tǒng)計(jì)所有列 即count(*)進(jìn)行統(tǒng)計(jì),即使所有列值均為空,,Oracle仍將計(jì)數(shù) l 利用count(1)進(jìn)行統(tǒng)計(jì),。 count(1)和count(*)返回值相同,對(duì)每條記錄都計(jì)數(shù)1 二.Oracle中的運(yùn)算 1.數(shù)學(xué)運(yùn)算 包括加(+),、減(—),、乘(*)、除(/)、四種,。無(wú)論操作數(shù)是何種數(shù)據(jù)類型,,都將首先轉(zhuǎn)換為數(shù)值型,然后才參與運(yùn)算,。 值得注意的是,,當(dāng)其中一個(gè)操作數(shù)的值為null時(shí),運(yùn)算結(jié)果仍然為null,。 2. 三.Oracle中的特殊判式 Oracle進(jìn)行條件判斷時(shí),,最常見的操作符為“=”。除此之外,,Oracle還提供了若干特殊判式進(jìn)行邏輯判斷,。這些判式包括: u between 范圍測(cè)試 u in 集合成員測(cè)試 u like 模糊匹配 %(匹配任意長(zhǎng)度的任意字符) _(匹配單個(gè)字符) u is null 空置判斷 u exits 存在性判斷 u all、some,、any 數(shù)量判斷 |
|
來(lái)自: 遠(yuǎn)方俠客 > 《文件夾1》