Time of Update: 2018-12-06
有兩個簡單例子,以說明 “exists”和“in”的效率問題1) select * from T1 where exists(select * from T2 where T1.a=T2.a) ; T1資料量小而T2資料量非常大時,T1<<T2 時,1) 的查詢效率高。2) select * from T1 where T1.a in (select T2.a from T2) ; T1資料量非常大而T2資料量小時,T1>>T2 時,2)
Time of Update: 2018-12-06
1、SELECT nvl(C_REMARK,chr(0)) into :sRate from T_COMM_CODE where c_cde = trim(:sText2) and rownum = 1;nvl是個函數,作用是如果第一個參數為空白值,則返回第二個參數的值,否則返回第一個參數的值。chr(0)將數字0轉化為字元0。2、Y.YJKSBH=X.ZXKSBH(+) AND
Time of Update: 2018-12-06
要從Oracle Procedure獲得資料集合,通常採用Ref Cursor的方式,要獲得此Cursor,有以下幾種方式:1.動態Sql返回:這種情況下,Procedure的運算通常比較簡單,比如根據參數組合sql或者多個Table的Join操作,但都可以通過一個sql陳述式完成查詢。CREATE OR REPLACE PROCEDURE sp_getcurrentstockpallet ( startdate DATE, enddate
Time of Update: 2018-12-06
一、概述 OracleEBS是Oracle公司的ERP產品,這個產品非常龐大,可以對企業的各個方面進行強大的管理功能,一般大型企業都會用到它的部分模組,根據公司的性質不同,選擇的模組也會有所不同。對於生產型企業,所採購的模組中都會包括產品及價格等管理模組。 ERP屬於大型系統,能選擇Oracle
Time of Update: 2018-12-06
資料匯出指令碼expdata.batset ORA_CONN=exp Oracle_UserNameA/Oracle_UserAPwd@OracleTnsLinkName full=y set NOW_DATE=%date:~4,10%set NOW_DAY=%date:~12,10%rd %NOW_DATE%_complete/q/smd %NOW_DATE%_completecd %NOW_DATE%_complete%ORA_CONN%
Time of Update: 2018-12-06
我寫的。 儲存點(SAVEPOINT)是交易處理過程中的一個標誌,與復原命令(ROLLBACK)結合使用,主要的用途是允許使用者將某一段處理復原而不必復原整個事務。如果定義了多個savepoint,當指定復原到某個savepoint時,那麼復原操作將復原這個savepoint後面的所有操作(即使後面可能標記了N個savepoint)。例如,在一段處理中定義了五個savepoint,從第三個savepoint復原,後面的第四、第五個標記的操作都將被復原,如果不使用ROLLBACK TO
Time of Update: 2018-12-06
說明:參考資料庫版本:10.0.2 一、命令解析STARTUP options | upgrade_optionsoptions為:[FORCE] [RESTRICT] [PFILE=filename] [QUIET] [ MOUNT [dbname] | [ OPEN [open_options] [dbname] ] | NOMOUNT ], NOMOUNT、MOUNT、OPEN為startup的三個階段,不能在命令中同時存在。其中,open_options為:READ {ONLY |
Time of Update: 2018-12-06
情境如下:--建立類型(type)create or replace type list_obj is table of number;--建立表結構create table test( name varchar2(30) primary key check(regexp_like(name,'^([a-z]|[0-9]|_)+$')), id number not null, version_list list_obj) nested table version_list store
Time of Update: 2018-12-06
發現系統資料沒有更新,查看oracle定時任務,估計沒有執行。發現next_date變成了4000/1/1 ,broken被選中。select * from user_jobs發現該任務失敗次數達16次。查得如下原因: 當任務運行失敗時,SNP過程在1分鐘後將再次試圖運行該任務。如果這次運行又失敗了,下一次嘗試將在2分鐘後進行,再下一次在4分鐘以後。任務隊列每次
Time of Update: 2018-12-06
昨天試了一下把mysql的資料來源配置mysql-ds.xml放在jboss下面跑,成功了;後來我想那oracle資料來源配置oracle-ds.xml也可以在jboss下面跑了。我就試了一下, 在啟動Eclipse時報以下錯誤:11:04:48,078 INFO [SettingsFactory] JDBC driver: Oracle JDBC driver, version: 9.2.0.1.011:04:48,125 ERROR [AbstractKernelController]
Time of Update: 2018-12-06
今天跟新人安裝oracle後,開啟資料庫查看錶裡面的資料,發現裡面的資料全是“靠”字。這可是以前沒有出現過的。因此就查了一下,瞭解到是註冊表的字元級問題。現解決如下: 在註冊表裡進行修改:開始-->運行裡面輸入regedit-->我的電腦\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0 裡NLS_LANG的值以前是:American_America.ZHS16GBK現改為:SIMPLIFIED
Time of Update: 2018-12-06
工欲善其事,必先利其器。Oracle自身帶了一些輔助的用戶端工具,但是都不太好用,但真正的DBA都喜歡用命令列方式來操作資料庫。我們不是DBA,我們是程式員,所以我們很有必要去找一些好用的工具以提高我們的工作效率。下面推薦兩款工具: 1.PL/SQL
Time of Update: 2018-12-06
文章目錄 .Net程式中可以通過ODP調用特性,對Oracle資料庫進行操作,今天來講一下資料批量插入的功能,所用技術不高不深,相信很多朋友都接觸過,小弟班門弄斧了,呵呵。這篇文章是上篇文章的續集,因為上一次實驗的徵集結果沒有突破4秒的方法,所以這次繼續挑戰與挖掘新方法,雖然是Oracle,但仍具有一定收藏意義。
Time of Update: 2018-12-06
雖然natural join(自然串連)實際上的用的比較少,但實際上這個串連是非常有用的,若能經常使用一下,實際上是非常方便的。 自然串連是在兩張表中尋找那些資料類型和列名都相同的欄位,然後自動地將他們串連起來,並返回所有符合條件按的結果。 來看一下自然串連的例子。 Select emp.ename,dept.dname From emp natural join dept;
Time of Update: 2018-12-06
Oracle中可以使用“(+) ”來表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN LEFT OUTER JOIN:左外關聯 SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); 等價於 SELECT e.last_name,
Time of Update: 2018-12-06
為了簡化SQL語句,可以將語句分成若干個視圖來操作,但是建立的試圖將會作為對象儲存在資料庫中,但經常有一些語句只是臨時使用,所以在sql-99規範中有了with as 語句,該語句實質上就是建立臨時視圖,來協助你簡化語句並使語句結構更清晰更容易閱讀。 下面的測試中會用到3張表,courseresults(課程-學生-成績表)、courses(課程表)、students(學生表),先給出建表語句:create table COURSERESULTS( CID NUMBER, SID
Time of Update: 2018-12-06
MSSQL連接字串(1)OLEDBWindows 身分識別驗證"Provider=SQLOLEDB;Data Source=PEK7-6TKX23X\SQLEXPRESS;Initial Catalog=Test;Trusted_Connection=Yes;";SQL Server 身分識別驗證"Provider=SQLOLEDB;Data Source=127.0.0.1\SQLEXPRESS;Initial Catalog=Test;User Id=sa;Password=123456;"
Time of Update: 2018-12-06
伺服器 2CPU 4G記憶體SGA共用池 384M緩衝區快取 1008M大型池 64MJava池 32MSGA總容量 1489.209MSGA的最大大小 1521.471MPGA總計PGA目標800M參數control_files = ('/oracle/app/product/9.2.0/oradata/ora9/control01.ctl', '/oracle/app/product/9.2.0/oradata/ora9/control02.ctl', '/oracle/
Time of Update: 2018-12-06
一、背景介紹 結構化查詢語言 (SQL)(Structured Query Language,簡稱SQL)是用來訪問關係型資料庫一種通用語言,屬於第四代語言(4GL),其執行特點是非過程化,即不用指明執行的具體方法和途徑,而是簡單地調用相應語句來直接取得結果即可。顯然,這種不關注任何實現細節的語言對於開發人員來說有著極大的便利。然而,有些複雜的商務程序要求相應的程式來描述,這種情況下4GL就有些無能為力了。PL/SQL的出現正是為瞭解決這一問題,PL/SQL是一種過程化語言,屬於第三代語言,
Time of Update: 2018-12-06
比較ORACLE與MSSQL。SERVER主要區別與各自優勢。具體使用有什麼不同之處? 開放性: SQL Server 只能在windows 上運行,沒有絲毫的開放性,作業系統的系統的穩定對資料庫是十分重要的。Windows9X系列產品是偏重於案頭應用,NT server只適合中小型企業。而且windows平台的可靠性,安全性和伸縮性是非常有限的。它不象unix那樣久經考驗,尤其是在處理大資料量的關鍵 業務時. Oracle 能在所有主流平台上運行(包括