BlueMichael

          將理論付出于實踐,在實踐中成長!

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            2 隨筆 :: 0 文章 :: 0 評論 :: 0 Trackbacks

          2008年9月11日 #

          ?

          /* ????
          說明:?????
          ?????在調試sql腳本時,如果要用Dbms_Output.Put_Line顯示腳本中的變量,如果變量中的內容單行長度????
          ?????超過了255個字符,會提示下面錯誤:????
          ?????ORA-20000:?ORU-10028:?line?length?overflow,?limit?of?255?chars?per?line????
          ?????所以我們可以用下面的已經創建好的包和視圖來實現。????
          ?????????
          ?????簡單點說就是也可以創建一個表,其中一個字段為long,將變量插入后再用select去查看。上面方式省略了創建表的過程。????
          */
          ????
          -- ?第一步????
          create ? or ? replace ?package?my_output?????
          as ?????
          ?????
          procedure ?put(?s? in ? varchar2 ?);?????
          ?????
          procedure ?put_line(?s? in ? varchar2 ?);?????
          ?????
          procedure ?new_line;?????
          ??????
          ?????
          function ?get_line(?n? in ? number ?)? return ? varchar2 ;?????
          ?????pragma?restrict_references(?get_line,?wnds,?rnds?);?????
          ??????
          ?????
          function ?get_line_count? return ? number ;?????
          ?????pragma?restrict_references(?get_line_count,?wnds,?rnds,?wnps?);?????
          ??????
          ?????pragma?restrict_references(?my_output,?wnds,?rnds,?wnps,?rnps?);?????
          end ;?????
          ???
          -- ?第二步??????
          create ? or ? replace ?package?body?my_output?????
          as ?????
          ?????type?Array?
          is ? table ? of ? varchar2 ( 4000 )? index ? by ?binary_integer;?????
          ?????g_data????????array;?????
          ?????g_cnt????????
          number ? default ? 1 ;?????
          ??????
          ?????
          procedure ?put(?s? in ? varchar2 ?)?????
          ?????
          is ?????
          ?????
          begin ?????
          ?????????
          if ?(?g_data.last? is ? not ? null ?)? then ?????
          ?????????????g_data(g_data.last)?:
          = ?g_data(g_data.last)? || ?s;?????
          ?????????
          else ?????
          ?????????????g_data(
          1 )?: = ?s;?????
          ?????????
          end ? if ;?????
          ?????
          end ;?????
          ??????
          ?????
          procedure ?put_line(?s? in ? varchar2 ?)?????
          ?????
          is ?????
          ?????
          begin ?????
          ?????????put(?s?);?????
          ?????????g_data(g_data.last
          + 1 )?: = ? null ;?????
          ?????
          end ;?????
          ??????
          ?????
          procedure ?new_line?????
          ?????
          is ?????
          ?????
          begin ?????
          ?????????put(?
          null ?);?????
          ?????????g_data(g_data.last
          + 1 )?: = ? null ;?????
          ?????
          end ;?????
          ??????
          ?????
          function ?get_line(?n? in ? number ?)? return ? varchar2 ?????
          ?????
          is ?????
          ?????????l_str?
          varchar2 ( 4000 )? default ?g_data(n);?????
          ?????
          begin ?????
          ?????????g_data.
          delete (n);?????
          ?????????
          return ?l_str;?????
          ?????
          end ;?????
          ??????
          ?????
          function ?get_line_count? return ? number ?????
          ?????
          is ?????
          ?????
          begin ?????
          ?????????
          return ?g_data. count + 1 ;?????
          ?????
          end ;?????
          ??????
          end ;?????
          ???
          -- ?第三步????
          create ? or ? replace ? view ?my_output_view?????
          as ?????
          select ?rownum? lineno ,?my_output.get_line(?rownum?)? text ?????
          ???
          from ?all_objects?????
          ??
          where ?rownum? < ?(? select ?my_output.get_line_count? from ?dual?);?????
          ???
          -- ---------------------------------------------------------------????
          --
          ?實現????
          --
          ?1?寫入要查看的內容????
          declare ?????
          ??QuerySql?
          varchar2 ( 4000 );????
          begin ??????
          ??Dbms_Output.enable(
          4000 );????
          ??QuerySql???:
          = ' ?IIDD?AS?ID,?IsDel?AS?已刪除,?AnJianID?AS?案件編號,?BaoGaoRenXM?AS?報案人姓名,?JieBaoRenXM?AS?接報人姓名,?JieBaoShiJian?AS?接報時間,?BM_MingCheng?AS?辦案單位名稱??From?XZ_ShouLiDengJi?a?WHERE??(exists?(Select? '' S '' ?from?GG_AnJianBanLi??where?AnJianID=a.AnJianID)?and?not?exists?(Select? '' S '' ?From?GG_AnJian?Where?AnJianID=a.AnJianID?and?HuiBiRenYuan_BH?like? '' %admin% '' ))?ORDER?BY?AddDateTime?DESC ' ;????
          ??Dbms_Output.Put_Line(
          ' LENGTH?:? ' ? || ?Length(QuerySql));????
          ??my_output.put_line(QuerySql);?????
          end ;?????
          -- ?2?查看結果????
          select ? * ? from ?my_output_view??
          posted @ 2008-09-11 09:53 dsy 閱讀(211) | 評論 (0)編輯 收藏

          發表日期:2007-06-27

          頭一次安裝oracle10g,還真是有點頭疼!
          ?????????? 1.總會出現網絡配置需求,未通過錯誤!所幸第二次安裝沒在出現這個問題
          1.在DOS下運行片刻進入ORACLE 10G安裝
          ???????????? 安裝方法界面在這里你要指定自己的安裝方法
          ???????????? ORACLE提供了兩種安裝方法:基本安裝(I)和高級安裝(A)
          ????????????????????? ORACLE默認的為基本安裝。選擇相應的安裝方法后,下一步。
          2.進入產品特定先決條件的檢查界面:
          ?????????? 在這里要檢查安裝ORACLE所需的操作系統需求、物理內存需求、網絡配置需求等等。
          ????????? 檢查后的結果就在該界面下邊的下拉框中??赡軅€別的檢查結果會失敗,但不會影響安裝。(不明白這里為什么會發生
          ????????????????? 這 種情況)
          3.選擇數據庫配置即選擇你要創建的數據庫類型:(一般用途、事務處理、數據倉庫、高級)。
          4.指定數據庫配置選項(數據庫命名:全局數據庫名和系統標示符SID、數據庫字符集、數據庫示例是否創建帶樣本的數據???????
          ????????? 庫)。
          -------------------------看了看,別人的總結,自己留下的一點心得,以留備用

          posted @ 2008-09-11 09:19 dsy 閱讀(212) | 評論 (0)編輯 收藏

          僅列出標題  
          主站蜘蛛池模板: 西城区| 栾川县| 霍山县| 酉阳| 宁晋县| 翼城县| 仁怀市| 汪清县| 东源县| 视频| 芦溪县| 上思县| 隆德县| 克什克腾旗| 墨脱县| 朝阳区| 望都县| 平遥县| 长汀县| 灯塔市| 永嘉县| 互助| 延川县| 容城县| 隆德县| 玉山县| 休宁县| 巴林右旗| 岢岚县| 吉隆县| 建宁县| 泽库县| 赣州市| 师宗县| 浑源县| 左贡县| 双辽市| 达拉特旗| 江油市| 施秉县| 临城县|