很多人吃了不少Parameters.AddWithValue的虧,因為它帶的型別與我們預料的不同,所以導致後續的問題,進而放棄使用 AddWithValue,改用給予明確型別的的方式,究竟Parameters.AddWithValue是怎麼去判斷帶入的值要用什麼型別?
Parameter參數中的DBType重要性
在加入DBCommand的Parameters,有沒有想過DBType這個問題,除了在使用Command.Prepare時,一定要指定,那麼其它時候是否要指定,而AddWithValue是否真的那麼[自動]的幫我們加上正確的型別?如果用錯DBType,那又有什麼差異?
Dispose在Oracle的Connection Pooling影響
這個Dispose跟Connection Pooling的影響,其實RiCoisme已有寫過一篇[ [C#] [Tips]Dispose是否影響Connection Pooling? ],而這篇之所以又再寫一次,主要是最近有朋友因為看了RiCoisme的前一篇之後,開始懷疑Oracle是否也有這個問題,雖然有第二篇的證實 Dispose跟Connection Pooling的問題,但驗證的是使用MS SQL,不知道Oracle是否也有同樣的情況,所以朋友反而比較容易接受第一篇的結論,為此,才又做了相同的測試,只不過這次用的是Oracle.
分頁從資料庫就做好RowNum Oracle版
之前有寫過同樣類似的一篇分頁從資料庫就做好,不過那個是MS SQL2005以上的版本,而Oracle也有類似的rownum可以用,但它跟MS SQL的Row_Number有點不同,但還是可以用它來做到同樣的功能.
用DbCommand來產生暫時的Store Procedure
Store Procedure的效能比較好,這點就不再討論,但有時不是想用就能用,這時可以用DbCommand的Prepare功能,來產生一個暫時的SP,藉此來提升效能.
各種DB的Parameter符號
在下SQL Script時,大家都知道使用Parameter來傳入參數會比較安全,但在各種不同的DB使用下,Parameter的符號也會不同.
Start with connect by prior 階層式查詢用法
在Oracle裡有一個不錯的階層式查詢功能,可以用很簡短的Script來達成目標,不用一堆子查詢或是temp Table在那join來join去囉.
MS SQL2005的怪情況
同一個查詢語法,MS SQL 2005與Oracle回傳的結果不同.
Oracle VS Microsoft SQL , Linux VS Windows 比較
摘要:Oracle VS Microsoft SQL , Linux VS Windows 比較
- 1