2010-12-06 09:08 PM 5 19,096
在我的認知裡,資料庫查詢在使用LIKE 'ABC%'時還是可以引用Index,但若變成LIKE '%ABC%',或LIKE '%ABC',就註定只能Table Scan,把整張資料表的每一筆撈出來比對。 最近幫忙看一個Oracle資料庫查詢效能不佳的個案,學到不同的處理經驗: SELECT C1...
2010-11-17 02:07 AM 0 8,266
在SQL 2008 x64 @ Win 2008 R2 x64上使用Linked Server連上Oracle,進行查詢時傳回以下錯誤: select * from openquery(OraServerA, ‘select sysdate from dual’) Msg 7399, Lev...
2010-11-11 10:04 PM 0 5,897
今天幫同事追查系統改版後的怪問題一則,挺離奇的,讓我有見鬼的fu。印象中是我第二次遇到,而兩次的受害者都是同一位同事,讓我不禁懷疑IT界應該也要有"靈異體質"這種說法。 不是很確定問題根源,只簡單記錄一下發生情境跟解決方法: 修改了Oracle資料表,新增一個欄位。例如: Table T1原本有...
2010-10-29 07:07 AM 3 62,234
前些時候,在做資料查詢時發現ORACLE支援多欄位IN條件的簡化寫法:SELECT * FROM T1 WHERE (C1,C2) IN (SELECT C1,C2 FROM T2) 當下覺得它好簡潔,SQL沒有真是可惜,便在噗浪上嘟嚷了兩句,獲得一些回饋: 保哥提到SQL有EXISTS可以取代...
2010-10-25 06:37 PM 3 18,910
今天是值得紀念的一天!! 多年以來,我一直以為在非Unicode編碼ORACLE資料庫中正確塞入難字的唯一方法,只能透過OracleParameter... 手上有個應用,我寫的.NET程式要接收其他程式傳來的CommandText執行,而其中包含以N'...'方式新增難字內容的指令。無力...
2010-09-23 09:31 PM 1 7,728
同事報案: 在SQL 2008 R2使用Oracle Provider for OLE DB建立Linked Server,執行SELECT * FROM ORASVR1..SCHEMANAME.TABLNAME時出現以下錯誤: The OLE DB provider "OraOLEDB.Or...
2010-09-23 12:55 PM 0 22,670
同事在一台原本只有ODP.NET 9207的測試台安裝ODP.NET 11g,並將該測試台上ASP.NET網站的ODP.NET版本升級到ODP.NET 11g。 接獲報案,原本週二換版後測試OK,今天再測試時,傳回以下錯誤:Exception Details: Oracle.DataAcce...
2010-07-15 07:28 PM 1 11,843
學海無涯! 一直以來,要放Unicode文字就得開NVARCHAR欄位的觀念深植我心。直到今天聽一位同事說: 如果Oracle資料庫的字元集設成Unicode,開VARCHAR就好了,不必為Unicode特意開NVARCHAR。 這顛覆了我的認知,但也不確定我根深蒂固的觀念是否隨軟體版本演進早已有...
2010-06-01 07:53 PM 0 7,985
同事遇到的問題,做個筆記: 在某台機器上,同樣的連線字串,用System.Data.OracleClient.OracleConnection可以連上資料庫,用ODP.NET 9207 Oracle.DataAccess.Client.OracleConnection卻一直彈出"帳號/密碼不正...
2010-05-14 09:49 AM 2 39,302
印象中有看過微軟未來將不再建議使用System.Data.OracleClient,昨天無意翻到正式宣告文,特別PO文整理一下。 主要考量是有很大比例的使用者,實務上用的都是夥伴廠商提供的ADO.NET Provider,一方面是配合Oracle改版的更新腳步較快,能較快用到資料庫的新功能,另...
2010-04-17 11:27 AM 3 13,131
最近在測試devart dotConnect for Oracle的LINQ to Oracle,發現應用在ASP.NET Web Site Project時,必須要完成一些部署步驟才能順利在另一台伺服器運作。我整理如下: 部署DLL有幾個選擇 :1) 在伺服器上執行dotConnect for...
2009-12-08 01:09 PM 0 12,220
【Scenario】Oracle上有三個Schema, AAA, BBB與CCC。 AAA下有個tblMyData,BBB下打算建一個View vw2ndHandData: SELECT * FROM tblMyData WHERE Col1 = 'A',所以要Grant SELECT on AA...
2009-12-03 08:49 PM 0 6,241
試圖變更Procedure內部使用的暫存資料表: alter table TEMPBUFFER modify EXCHANGERATE NUMBER(14,5) 執行時一直傳回 ORA-14450 attempt to access a transactional temp table alrea...
2009-11-06 10:15 AM 10 15,252
同事詢問關於Procedure內是否會自動包成Transaction的問題,我的認知是SQL要額外下SET XACT_ABORT ON,但Oracle則預設會自動包成Transaction。記憶有些模糊,所以索性做個實驗最準。 分別在SQL, Oracle寫了Procedure,先塞入兩筆資料,第...
2009-10-18 04:10 AM 10 30,798
上回針對Oracle使用LINQ做了一番評估,打算為Oracle相關專案導入LINQ預做暖身。無意發現除了Entity Framework外,還有另外的選擇---devart的LINQ to Oracle! 基於工作專案常偏向RAD性質,對我來說,LINQ to Oracle的輕巧優於EF的龐...
2009-10-17 04:36 AM 0 8,745
寫了以下的程式做SQL與Oracle的分散式交易: using (System.Transactions.TransactionScope tx = new System.Transactions.TransactionScope()){ //... Update data on ...