前陣子用了 SQL Server 2005 中極少人使用的 Query Notification 功能,且我下的 SQL 指令明明就很單純,只是做一個簡單的 SELECT 查詢卻會引來 SQL Server 的內部錯誤,自己奮戰了一個多月無解,最後還是靠微軟的技術支援中心幫我解了這個難題。
... 繼續閱讀 ...
可能許多人不知道資料庫連線參數 (Connection String) 中的 Persist Security Info 參數是做什麼用的,且用到的機會也很少,但我們這幾天就遇到了一個跟 Persist Security Info 參數有關的錯誤,特別分享一下處理的經驗。
... 繼續閱讀 ...
熟悉 LINQ to SQL 的朋友應該很清楚如何透過 Skip 與 Take 方法來取得資料的部分集合,但各位可能不知道透過這種方式分頁時有個很有可能出錯的地方,而且這個錯誤可能會讓你覺得這是 LINQ to SQL 的 Bug,有在使用 LINQ to SQL 分頁的人必看此篇文章。
... 繼續閱讀 ...
最近有個專案由於需要對資料庫修正設定,必須開啟 SQL Server 2005 的查詢通知(Query Notification)功能,由於開啟查詢通知功能要啟用 Service Broker,而設定時需要中斷所有與該資料庫的連線才能設定成功,我們一般的實務作法是先將資料庫轉為「單人模式」再進行操作,但因為網站並沒有斷線,所以當透過 Management Studio 的 GUI 介面對資料庫切換至單人模式後,這個「單人」卻立即被網站的連線給搶走!
... 繼續閱讀 ...
最近客戶提供了一台 SQL Server 2008 的測試機給我們,不過特別的是他們提供的 SQL Server 2008 並非使用預設的 1433 埠號(Port)。一般來說,網路連線到非預設埠號時,都會使用冒號 ( : ) 分隔,不過當我在 SQL Server Management Studio 中輸入 192.xxx.xxx.111:14333 這樣的格式連線時,卻會出現以下錯誤:
... 繼續閱讀 ...
我們今天遇到一個特殊的例子,當資料庫中的其中一個表格設定一個 AFTER INSERT 觸發程序(Trigger)時,竟然造成新增資料失敗,錯誤訊息如下:
... 繼續閱讀 ...
我之前就有一次經驗,當開發的 SQL CE 專案部署到客戶端正式主機時,因為資料疑似沒有寫入 SQL Server Compact 資料庫,所以想要手動查詢資料庫中的資料,但當時只能用 Visual Studio 開啟 SQL Server Compact 資料庫檔 ( *.sdf ),總不能在客戶的主機上安裝 Visual Studio 吧 ( 不過我真的看過有人真的這樣幹 = ='' ),當時苦無工具可用,只好把資料庫當複製回公司然後透過遠端連線查看資料,真的很麻煩。
... 繼續閱讀 ...
最近在研究 SQL Server Compact ( 或稱 SQL CE ) 資料庫,也順帶研究如何才能讓 SQL CE 資料庫可以在 ASP.NET 環境中正常使用,由於 SQL CE 資料庫在定位上是比較屬於嵌入式資料庫( Embeded Database ),雖然在桌面環境也能使用,不過也僅建議用在「單人操作」的系統中,像對於 ASP.NET 這種多人同時使用的 Web 環境預設就不支援了。
... 繼續閱讀 ...
在 SQL Server 中有個 DATEDIFF 函數可以計算出兩個日期間的差距,例如若要算出兩個日期的差異「天數」可以用以下語法得知:
... 繼續閱讀 ...