Oracle資料處理

來源:互聯網
上載者:User

標籤:style   io   color   os   ar   使用   java   for   sp   

DML語言            &:地址符;(PrepareStament)            批處理:插入--------一次將10號部門的員工插入新的表中;                            其不必書寫values語句;子查詢中的值列表應與insert中子句中的列名對應;                          delete與truncate的區別:1;delete逐條刪除,而truncate先摧毀表,然後在建立表;                                                                    2:主要區別是兩種不同的語言;                                                                    3;delete不會釋放空間,而truncate可以;                                                                    4:delete刪除時會產生片段,而truncate不會產生;                                                                    5:delete可以閃回,而truncate不可以閃回;                          set feedback off 命令:不顯示執行語言;            執行硬碟上的sql指令碼命令:如:@c:\sql.sql; 測試得出:delete操作速度快;            
DCL語言            Oracle的事物是自動開啟,手動提交(顯示:commit;隱式:正常退出,ddl語句) 復原(顯示:rollback;隱式:非正常退出,斷電,宕機);            通過儲存點savepoint能夠更好控制事物;建立儲存點的命令:savepoint 儲存點名;            Oracle支援的事物層級:READ COMMITED(default),SERIALIZABLE,READ ONLY;            
DDL語言            對象有12個            表:建立表時需要許可權,空間;我們可以通過子查詢快速建表,可以通過add,modfiy,drop,rename實現對錶欄位的修改;                    Oracle的資源回收筒:show recyclebin 查看資源回收筒;purge recyclebin 清空資源回收筒;並不是每個使用者都有資源回收筒,管理員沒有資源回收筒,普通使用者才會有資源回收筒;                    如何將資源回收筒的表取回?---閃回課程                    表的約束:not null,unique,primary key,foreign key,check;一般建立表和建立約束分開,便於閱讀;                    約束的例子:
create table student
(
pid number constraint student_PK primary key,
sname varchar2(20) constraint student_name_notnull not null,
gender varchar2(2) constraint student_gender check (gender in(‘男‘,‘女‘)),
email varchar2(20) constraint student_email_unique unique
constraint student_email_notnull not null,
deptno number constraint student_FK references dept(deptno) on delete cascade
)
            視圖:從表中抽出的邏輯上相關的資料集合;目的:簡化查尋;                      不建議:通過視圖對錶的修改;

            序列:sequences主要作用是給表的主鍵提供值,其有兩個屬性nextval,currval;                        其特點:其是個數組,存在於記憶體當中;                        資料不連續:復原,系統異常--停電,多張表使用一個序列;
            索引:提高查詢速度;                       如:create index myindex on emp(deptno,job);                                    同義字:別名
Oracle的plsql
            操作Oracle最快的語言是plsql;            變數的類型:基礎類型,引用性變數(%type),記錄性變數(%rowtype);            其賦值方式有兩種:“:=”和into關鍵字;            set serveroutput on 命令:開啟控制台列印輸出; accept num prompt ‘請輸入‘命令是:接受鍵盤上輸入的內容;            plsql的if語句必須以 if end結束;
            游標:cursor用於儲存一個查詢返回的多行資料;其屬性:%isopen是否開啟;%rowcount記錄數;%notfound 沒有記錄;                        使用cursor首先open和最後close;Oracle最多支援300個游標;show paremeters 查看參數設定;                        案例:使用游標查詢員工的姓名和薪水,並列印;給員工漲工資,總裁1000,經理800,其它400;其也需要手動提交事物;                        帶參數的游標:其定義,開啟游標時帶參數,其它用法和不帶游標的用法相同;                        案例:查詢某個部門的員工姓名
            例外:系統內建的例外,自訂的例外;在Java中異常是向上處理機制,而plsql不能向上拋,                        在java中try。。catch。。finally 而plsql中只有try。。catch其寫法是exception when 。。then。。。                        在declare中自訂例外:例外名 exception; 使用raise跑出異常,異常會幫你自動關閉游標;

            執行個體一:統計每年入職的人數;            執行個體二:為員工漲工資,從最低工資調起沒人漲10%,但工資總額不能超過5萬元;請計算漲工資的人數和漲工資後的工資總額,並輸出漲工資人數和工資總額;
=====================================================預存程序(沒有返回值),儲存函數(有返回值),觸發器            Java不能直接調用plsql,而是寫成預存程序,儲存函數,讓後用Java來調用;            建立儲存過稱:create[ or replace] procedure 過程名(參數列表) as  plsql子程式體;參數類型及輸入輸出要標明;不要在儲存函數,預存程序中不要提交事物;           調用預存程序的方法:exec 過程名();在另一個plsql中調用:begin 過程名();end;這兩種方法;            建立儲存函數:create[ or replace] procedure 過程名(參數列表) return 返回值類型 as  plsql子程式體;             輸出參數適用out,預存程序,儲存函數都可以返回一個或者多個參數,其二者基本上沒有區別;            執行個體一:查詢某個部門中,所有員工的所有資訊                        需要包頭和包體:            當返回的結果是集合,可以使用游標來實現;            
                        

            
           




Oracle資料處理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.