SQL Server | The Will Will Web

The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

解決 SQL Server 2008『無法設定主體 ‘sa’ 的憑證』的問題

我一般來說都是用 Windows 驗證連接資料庫,不過前幾天想把我本機的 SQL Server 2008 的 sa 帳戶啟用時卻發生『無法設定主體 ‘sa’ 的憑證』的錯誤 (如下圖),這個奇特的錯誤只會發生在使用 SQL Server 2008 的 SQL Server Management Studio (SSMS) 工具時,連用 SQL Server 2008 SSMS 設定設定 SQL Server 2005 也會出現一樣的問題。

... 繼續閱讀 ...

解決 SQL Server 資料庫無法啟用 Service Broker 的問題

我們今天有個案子遇到一個很緊張的狀況,因為正式機的 SQL Server 資料庫沒人管一段時間了 (因為網站還沒正式對外上線),結果資料庫的交易記錄竟然把硬碟給塞爆了,這導致資料庫再也無法寫入資料而網站也自然無法使用,我們得知狀況後立即告知負責管理資料庫的 DBA 處理狀況。

... 繼續閱讀 ...

SqlCacheDependency 如何套用到有多重表格關聯的情況

我們都知道 SqlCacheDependency 有個很大的限制,就是一次只能用「單一表格」做判斷,如果你有個檢視表(View)或使用的 SQL 語法有 JOIN 兩個以上的表格,就無法利用 SqlCacheDependency 幫你達成快取相依(CacheDependency)的設計,但我們大多的案子很少有「單一表格查詢」的狀況,以導致很多情境下無法使用 SqlCacheDependency 感覺十分懊惱,但我們最近想出了新方法!

... 繼續閱讀 ...

善用 SQL Server Management Studio 選項設定DB作業環境

我們每天與 SQL Server 資料庫為伍,絕對不能跟 Management Studio 不熟,就像我們一般日常做程式開發時一樣,開發工具的「選項」設定多少都會調整一下方便我們工作。但是工作環境切換到 Management Studio 之後我卻發現許多人不知道要善用 Management Studio 的 [選項] 設定,今天我就來分享一些我常用的 [選項] 設定值 (非預設值)。

... 繼續閱讀 ...

如何讓使用中的資料庫中斷所有連線以執行資料庫更新動作

最近有個專案由於需要對資料庫修正設定,必須開啟 SQL Server 2005 的查詢通知(Query Notification)功能,由於開啟查詢通知功能要啟用 Service Broker,而設定時需要中斷所有與該資料庫的連線才能設定成功,我們一般的實務作法是先將資料庫轉為「單人模式」再進行操作,但因為網站並沒有斷線,所以當透過 Management Studio 的 GUI 介面對資料庫切換至單人模式後,這個「單人」卻立即被網站的連線給搶走!

... 繼續閱讀 ...

SQL Server 透過 TCP/IP 遠端連線時如何使用非 1433 埠號

最近客戶提供了一台 SQL Server 2008 的測試機給我們,不過特別的是他們提供的 SQL Server 2008 並非使用預設的 1433 埠號(Port)。一般來說,網路連線到非預設埠號時,都會使用冒號 ( : ) 分隔,不過當我在 SQL Server Management Studio 中輸入 192.xxx.xxx.111:14333 這樣的格式連線時,卻會出現以下錯誤:

... 繼續閱讀 ...

介紹好用工具:SQL Server CE Query Tool

我之前就有一次經驗,當開發的 SQL CE 專案部署到客戶端正式主機時,因為資料疑似沒有寫入 SQL Server Compact 資料庫,所以想要手動查詢資料庫中的資料,但當時只能用 Visual Studio 開啟 SQL Server Compact 資料庫檔 ( *.sdf ),總不能在客戶的主機上安裝 Visual Studio 吧 ( 不過我真的看過有人真的這樣幹 = ='' ),當時苦無工具可用,只好把資料庫當複製回公司然後透過遠端連線查看資料,真的很麻煩。

... 繼續閱讀 ...

如何在 ASP.NET 專案中使用 SQL Server Compact 資料庫

最近在研究 SQL Server Compact ( 或稱 SQL CE ) 資料庫,也順帶研究如何才能讓 SQL CE 資料庫可以在 ASP.NET 環境中正常使用,由於 SQL CE 資料庫在定位上是比較屬於嵌入式資料庫( Embeded Database ),雖然在桌面環境也能使用,不過也僅建議用在「單人操作」的系統中,像對於 ASP.NET 這種多人同時使用的 Web 環境預設就不支援了。

... 繼續閱讀 ...