用ADO.Net實現Oracle大批量資料更新最佳化)

在業務系統應用中,經常會使用到大量資料的的提交(包括查詢、更新或刪除),如果目標資料庫的資料量較大,一次需要處理的操作較多,就會出現系統執行效率低下等問題。文本以Oracle9i資料庫為例,通過對ADO.Net中的資料庫支援的應用實踐,說明幾種常見的最佳化處理方法,並對比其中的優劣。

oracle預存程序的常用文法

記錄一下,主要方便自己以後尋找:create or replace procedure sp_test(aa in varchar,bb in number default 0) isv_pos varchar(50);v_num number;begin  ---字串尋找和替換 select SUBSTR(PARAMETER, 1, INSTR(PARAMETER,branchId)-2) ||           SUBSTR(PARAMETER, INSTR(PARAMETER,branc

Oracle 自訂結構(Record)

1、概念及使用     類似於C中的自訂類型,可用於定義某表的欄位集合。        定義格式  type recordName is Record(                         欄位名稱 欄位類型,                         欄位名稱 欄位類型                     );       使用步驟: 1)聲明結構體   2)定義結構體變數

Oracle 的過程和函數

1、使用過程或函數的好處     1)確保資料安全性:例如,現有一個過程能夠更新某資料表,管理員不必授予使用者直接存取資料表的許可權,而是授予使用者訪問此過程的許可權。     2)提升效能:使用預存程序時通過網路傳輸的資料量較小,減少網路傳輸量。     3)減少記憶體:預存程序可以利用 Oracle 的共用記憶體特性,多個使用者執行同一個過程時只需將一份過程副本載入到記憶體中。通過在多個使用者間共用相同的代碼,能夠顯著地減少應用程式所需的 Oracle 記憶體。   

Oracle 中的JOIN

1、概述1.1、所有的join串連,都可以加上類似where a.id='1000'的條件,達到同樣的效果。1.2、除了cross join不可以加on外,其它join串連都必須加上on關鍵字,後都可加where條件。1.3、雖然都可以加where條件,但是他們只在標準串連的結果集上尋找where條件。比如左外串連的結果沒有class的三班,所以如果加 where

Oracle 包(Package)

1、為什麼要使用包?      答:在一個大型項目中,可能有很多模組,而每個模組又有自己的過程、函數等。而這些過程、函數預設是放在一起的(如在PL/SQL中,過程預設都是放在一起的,即Procedures中),這些非常不方便查詢和維護,甚至會發生誤刪除的事件。所以通過使用包就可以分類管理過程和函數。     而且在包中還可以自訂自訂類型,從而在過程和函數中可以直接使用自訂變數。Oracle中包的概念與JAVA中包的概念非常類似,只是JAVA中的包是為了分類管理類,但是關鍵字都是package。 

unable to open connection to “Oracle,Microsoft provider V1.0.5000.0″

在運行asp.net程式時,用ibatis串連資料庫,出現如標題的問題查看詳細錯誤的時候發現需要oracle用戶端軟體8.1.7最開始查發現需要重新安裝一遍oracle,於是重新安,但又遇到了oci.dll無法載入的問題。後來才查明是由於卸載了以前的oracle用戶端後,檔案夾目錄未刪除,導致oci.dll還存在刪除oracle目錄後,順利安裝完畢需要oracle用戶端軟體8.1.7,在網上查明是當oracle

Java讀取xml檔案中oracle資料庫連接(sax))

原文:http://hi.baidu.com/%B1%CF%C0%F6%C3%F4/blog/item/a1ce3a08cb3990d263d986e3.html DataBaseConfig.xmlCode highlighting produced by Actipro CodeHighlighter

免安裝Oracle用戶端使用PL/SQL串連Oracle

原文:http://www.bootad.cn/post/185.html   大家都知道,用PL/SQL串連Oracle,是需要安裝Oracle用戶端軟體的。有沒要想過不安裝Oracle用戶端直接連接Oracle呢?      其實我一直想這樣做,因為這個用戶端實在太讓人討厭了!!!不但會安裝一個JDK,而且還會把自己放在環境變數的最前面,會造成不小的麻煩。      其實我之前問過很多人的,但是他們都說一定需要安裝Oracle用戶端的.......直到昨天無意中發現了以下這個方法:     

Oracle Spatial資料

Oracle Spatial詳解Oracle Spatial中SDO_Geometry詳細說明shp轉oracle spatialOracle Spatial常見錯誤Oracle Spatial Developer's GuideOracle Spatial SRID:  1.user_sdo_geom_metadata儲存各個圖層的srid值    建立sdo_geometry表後,需更新每個空間表對應的srid欄位,否則java中寫入時srid無法為null,則提示ORA-13365:

zz Oracle預存程序總結

1、建立預存程序 create or replace procedure test(var_name_1 in type,var_name_2 out type) as --聲明變數(變數名 變數類型) begin --預存程序的執行體 end test; 列印出輸入的時間資訊 E.g: create or replace procedure test(workDate in Date) is begin dbms_output.putline('The

oracle資料字典小結

下面按類別列出一些ORACLE使用者常用資料字典的查詢使用方法。        一、使用者    查看目前使用者的預設資料表空間    SQL>select username,default_tablespace from user_users;    查看目前使用者的角色     SQL>select * from user_role_privs;     查看目前使用者的系統許可權和表級許可權    SQL>select * from user_sys_privs;   

自用小經驗(2)–oracle使用遊標可以支援結果集

 Oracle 預存程序可以支援結果集, 暫時還沒有考證對於大資料量查詢來說,使用這種方式直接返回OracleDataReader, 是否比通過其它方式(如視圖)速度來得更快.下面說明如何使用 DataReader 來訪問由預存程序 SELECT_JOB_HISTORY 返回的結果集。以下為包規範:CREATE OR new PACKAGE SELECT_JOB_HISTORY ASTYPE T_CURSOR IS REF CURSOR;PROCEDURE

一個簡單的oracle預存程序

到現在,寫過2,3百個oralce預存程序,函數,觸發器等,寫過1百多個sql server的預存程序.下面貼一個我寫的第一個oracle預存程序,見證成長的曆程吧,呵呵-- 功能:  複製使用者  -- 建立人: applegreen  -- 更新時間: 2004-8-18  CREATE OR REPLACE PROCEDURE p_copy_user_rights         (olduserid  IN  NUMBER,  

Oracle 建立使用者 修改使用者密碼 授權命令

create user [username] identified by [password] 建立新的使用者  grant 許可權1、許可權2...to 使用者  給建立使用者權限  ex:grant create session to [username] 此時只能串連到資料庫  grant connect,resource to [username] 此時許可權能滿足要求  alter user [username] identified by [password] 修改使用者密碼 

ORACLE SQL 函數 INITCAP()

  INITCAP()   假設c1為一字串.函數INITCAP()是將每個單詞的第一個字母大寫,其它字母變為小寫返回.   單詞由空格,控制字元,標點符號等非字母符號限制. select initcap('hello world') from dual;   結果   INITCAP('HE   -----------   Hello World   select initcap('漢ello world,漢elloworld,hello漢world,hello 漢world')

Oracle-12514問題

配置環境正確,重新啟動之後資料庫不能串連.主動跟被動的關係1.是讓listener主動載入服務原因是 添加    (SID_DESC =      (SID_NAME = orcl)      (ORACLE_HOME = /data/cache1/oracleDB/oracle/product/10.2.0/db_2)    )後,在使用lsnrctl

使用Oracle 的 imp ,exp 命令實現資料的匯入匯出

  本文對Oracle資料的匯入匯出 imp ,exp 兩個命令進行了介紹, 並對其相應的參數進行了說明,然後通過一些樣本進行演練,加深理解.文章最後對運用這兩個命令可能出現的問題(如許可權不夠,不同oracle版本)進行了探討,並提出了相應的解決方案;本文部分內容摘錄自網路,感謝網友的經驗總結; 一.說明    oracle 的exp/imp命令用於實現對資料庫的匯出/匯入操作;   exp命令用於把資料從遠端資料庫伺服器匯出至本地,產生dmp檔案;  

配置Apache 2.2+PHP 5.2.9支援OCI通過Oracle9i Client串連Oracle

從上周開始,一直被一個問題困擾著,公司電腦上裝的是Oracle9i用戶端,然後使用Apache 2.2+php 5串連oracle資料庫,不管如何配置都不能使用OCI(使用oracle 10g的用戶端只要去掉php.ini的php_oci8.dll的注釋就會支援oci8,我膝上型電腦上是10g的用戶端一點問題都沒有.但因為一些其他原因不能把oracle9i卸載掉裝10g)從網上也找了很多資料去研讀,網上有牛人給出了這樣的解釋.PHP5的oci8不相容oracle的

Oracle未啟用Partitioning功能

首先查詢一下當前Oracle版本是否支援資料分割函數 SQL>   SELECT   VALUE   FROM   V$OPTION   WHERE   UPPER(PARAMETER)= 'PARTITIONING '; VALUE ---------------------------------------------------------------- TRUE                                 --[說明當前   Oracle  

總頁數: 1509 1 .... 255 256 257 258 259 .... 1509 Go to: 前往

聯繫我們

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