Browse by Tags

【茶包射手日記】不限條件選項之SQL組裝與資料庫OR運算特性驗證
在設計查詢介面時,下拉式選單是很常見的條件選取方式,而往往我們都會再加上一個"不限條件"選項,允許使用者不限制條件,列出所有項頁。舉例來說: 在設定查詢地區的下拉選單(例如: ddlArea),除了列出基隆市、台北市、台北縣、桃園縣...等各縣市Option外,常會再多一個"所有地區"選項,將Option Value設定='*',選取時表示不限定地區。在Server端,便要將這些篩選條件轉為SQL指令,如何將'*'視為不限地區...
CODE-在SQL Server XQuery中使用欄位或變數值當條件
今天處理到一個需求,要在SQL 2005中用Table1 JOIN Table2,Table2中有個XML欄位,裡面有多筆資料,JOIN時要用Table1的某個欄位當條件在XML中挑出特定XmlNode。 聽起來很模糊對吧? 我用來實例來比喻,假設有個Player資料表跟Team資料表,Team資料表中有個MemberListXml欄位,其中有該球隊成員的相關資料。我今天要用Player資料表去JOIN Team資料表,先找出Player所屬球隊,再從該球隊MemberListXml中用XPath語法調出該名球員的資料...
MEMO-Procedure Transaction: SQL Server vs Oracle
同事詢問關於Procedure內是否會自動包成Transaction的問題,我的認知是SQL要額外下SET XACT_ABORT ON,但Oracle則預設會自動包成Transaction。記憶有些模糊,所以索性做個實驗最準。 分別在SQL, Oracle寫了Procedure,先塞入兩筆資料,第三筆故意產生PK重覆錯誤,觀察資料庫是否有前兩筆資料來判別是否有Transaction保護。實驗證明,原先的認知沒錯,二者行為不同。 SQL Server Procedure要將操作包成Transaction的話...
觀察LINQ to SQL DataContext的連線開啟時機
昨天的文章 發表後,有兩位網友提到了DataContext是否要加using的議題。 我接觸LINQ to SQL是由Scott Gu的 這幾篇文章 開始入門的,在他的範例中沒有特別提到using,我也自始就忽略DataContext有實做IDispose這件事。雖然用using包住絕對有益無害(只要小心using中間過程如將DataContext傳到外部,要留意using結束後外部就不可再繼續叫用),但我倒認為DataContext裡的Connection應該不是一new DataContext就建立一條連線不放...
取代DTCPing的新工具-DTCTester
今天要設定Windows 2008防火牆使用SQL分散式交易,查資料時 發現了 檢測MSDTC連線的新工具-- DTCTester 。 簡單來說,它是用以取代DTCPing的改良版。主要優點是只需在Client執行,不像DTCPing得在Client,Server都跑互連,而且由於它會真的連線SQL Server進行一些讀寫測試,相較於DTCPing只檢查網路傳輸層,更能正確反應SQL連線的真實狀態。換句話說,過去DTCPing成功但SQL分散交易不通的"偽陽性"失真情況可望改善...
【茶包射手專欄】SSMS的特殊字元陷阱
被一個茶包攪和了一下,也學到點新東西,特別PO文留念。 在整理一些從Excel轉進來的手打資料(強調"手打"表示可能存在輸入誤差,這邊多一點那邊少一點的,用行語來說,就是” 資料有點髒 ”)。舉例來說,整理過程中我要比對出訂單明細OrderDetail裡有沒有打錯訂單編號,做法是查詢OrderDetail中,抓OrderId沒有在訂單主檔(OrderEntry)出現者。 這可難不倒我,蛋糕一塊: SELECT OrderID FROM OrderDetail WHERE OrderId...
Connection Pooling之SqlDataReader.Close()測試
早上貼了 OracleConnection Pooling觀察文 後,引發另一個疑問: 那麼沒呼叫SqlDataReader.Close()也會有相同問題嗎? 程式經過修改,就做出了SQL版: public static void ShowSessionCount( string tag) { using (SqlConnection cn = new SqlConnection(cnStrMonitor)) { cn.Open(); SqlCommand cmd = new SqlCommand...
小心駛得萬年船--SQL指令保險栓
手動對資料庫下指令是一件恐怖的事,稍一操作不慎,就有可能把整個系統給毁了。 理論上,吾人應該極力避免手工更動資料這等可恥行徑。只要系統考慮得夠周詳,預先料想到所有可能出現的詭異狀況,一一提供相關的介面,經過程式邏輯檢查後才對資料進行處置或修正,不可能出現需要手動改資料的狀況。這是一個好的系統應有的嚴謹度!! 好,官冕堂皇的屁話說完了,現在來聊聊怎麼做好這件"可恥的事"? (道德感強烈者或軟體工程基本教義派請略過本文) 當我們萬不得已,必須使用T-SQL指令直接對資料庫進行操作時...
SQL Server, 請幫我從1數到100
今天看到 保哥 一篇 關於LINQ to SQL分頁問題 的文章,裡面有一段範例是利用'User ' + cast(cast(rand() * 100 as int) as varchar(3))的技巧連續執行十次產生十筆測試用的資料。 這讓我想起之前在做 CSV字串分割成陣列UDF 時 意外學到 的技巧,可以借用鮮為人知的master.dbo.spt_values系統資料表,讓SQL產生一段連號數字,這樣就能一口氣塞入連號的"User 1”, "User 2...
SSRS 2008初體驗
第一次要用SSRS 2008做報表,發現讓人驚奇的事! 連上本機Reports目錄時,出現錯誤: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. 想要除錯,在IIS上卻看不到Reports、ReportServer兩個虛擬目錄。莫非我SSRS沒裝好? 但明明上述的錯誤像是傳統SSRS所回應的,若沒有Reports Web Application...
用SQL 2008 SSMS逐行偵錯
圖片說明一切! 是的,SQL 2008的SQL Server Management Studio可以直接Line-by-Line Debug!!! 不再需要由Visual Studio代勞。 剛好最近在寫很複雜的Stored Procedure,雖然未來上線的正式環境會是SQL 2005,我在開發平台上還是偷跑裝了SQL 2008,光這功能就值回票價,倒是 T-SQL Inetllisense 的功能沒有想像中靈光。(畢竟要在結構鬆散又彈性十足的T-SQL中要準確地找對提示複雜多了) 直接在SSMS中用Debug...
SQL2008 RTM來了
雖然Lag了好幾天,但還是要寫一下。SQL 2008 RTM於 8/6 正式釋出了,MSDN的訂戶已經可以去下載嚐鮮。 依我自己的安裝經驗,要先安裝以下兩個更新: (安裝程式會提示) Microsoft .NET Framework 3.5 SP1 Windows Installer 4.5 Redistributable KB942288 執行身份的地方多了不少選擇,不再像以前預設用Local System不知不覺就混過去,文件上建議使用不具管理者身份的Domain/Local User Account來跑服務...

搜尋

Go

<September 2010>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789
 
RSS
【工商服務】
最新回應

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


BlogLook Score and Rank

Syndication