Oracle應用開發手記

來源:互聯網
上載者:User

 

1  在Oracle 資料庫中進行過程調試

   Oracle 進行過程調試的格式為:

   Declare

        Param_int integrate;

   Begin

       Null;

--operate the data

 end

 Sql server 的過程調試格式:

 在sql server中過程編寫過程為直接編寫sql語句

比如以上的過程的指令碼在Sql service中實現為

Declare @param_int int

Null;

--Operate the data;

 

2 在Oracle 編寫預存程序

2.1 整個預存程序各個環節文法注意事項

   下面首先提供以下基本格式的預存程序文法結構

CREATE OR REPLACE PROCEDURE cc_getmanualquery

(

param_inputNum IN number,

Param_inputString In varchar,

     Param_OutNum out varchar

)

AS

    Param_temp Number;

begin

         --Operate the data

end ;

 

注意事項:

1)預存程序介面的參數在多個情況下,需要加上,進行間隔

2)預存程序的變數參數,每個變數的定義後面都加上;

3)預存程序的執行體,在結束後加上;符號。

 

2.2 If條件陳述式文法

If語句的格式為:

If ()then

Begin

End

Elsif ()then

Begin

End

   End if

 

If 語句和Sql Server 格式不一樣

在 Sql Server 中的If語句的格式為

If()

Begin

      --Operate the data

   End

Else ()

   Begin

          --Operate The data

   End

 

2.3返回資料集合的方式

l_cursor out DSPackage.DataSet

 定義遊標格式的變數,同時在預存程序中,對遊標進行設定

在Sql Server 中資料集合返回格式為

直接在預存程序的操作區中最後一個select語句,查詢的資料結果,這種方式在Oracle中會出現異常。

 

2.4變數定義 和賦值的方式

在Oracle中變數定義格式

變數名稱 varchar

賦值的方式

變數名稱:=變數值。

Sql Server 中為

Declare @param int;

Set @param=1;

 

2.5使用Select into 的方式進行資料賦值方式時,在沒有資料填充的情況下,異常情況

注意在 Oracle 中Select 返回結果中沒有資料集的情況下,就會發生異常,需要進行異常處理。

在Sql server中 變數為Null

 

2.6 oracle中的異常處理

 

EXCEPTION
      WHEN OTHERS
      THEN
         --傳回值賦值
         raise_application_error (-20000,
                                  '任務隊列入日誌庫錯誤' || SQLERRM
                                 );
         GOTO proc_end;

         <<proc_end>>
         NULL;

 

 

2.7 變更影響行號數值的擷取

 if sql%rowcount = 0 then
                begin
                    open l_cursor for select* from CC_MANUAL where id is null;--表的名字  
                    i_o_state := -9;
                    v_o_msg   := '更新協查事件表問題標識失敗';                   
                         
                    --raise exp;
                end;
             end if;

 

以上sql%rowcount = 0  部分為 判斷更新影響的行數是否為0

 

 

2.8 通過Select 建立表

執行個體: create table CC_NeedImport_CellPhoneSort as  select * from cellphonesort 
    文法格式:create Table 表名 as select *  from 表名

 

 

2.9 字串拼接

執行個體:   concat(endcode,'0')

SqlServer 中為 endcode+'0'
  

 

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.