The Will Will Web

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

讓 SQL Server 告訴你有哪些索引應該被重建或重組

我去年有一段時間睡覺前都在看 SQL Server 2005 證照的書(MCTS 70-431),從中學到許多資料庫實際運作的技術細節,例如: 索引的結構。當資料庫中的索引碎裂(index fragmentation)程度過高時,索引的效率就會大大降低,為了避免這個問題發生,就必須定時替資料庫健檢(維護資料庫),也就是進行索引重建(rebuild)或索引重組(reorganize)。

... 繼續閱讀 ...

SQL Server 2005 SP3 已出爐(Released)!

SQL Server 2005 的 Service Pack 3 在前幾天出爐了,比較值得一提的是這次推出的 Service Pack 3 把各種不同版本的 SQL Server 2005 都分別做了不同的 Service Pack 版本,所以升級的人需要先檢視自己安裝的版本再進行升級安裝的動作,以下是下載的連結(繁體中文):

... 繼續閱讀 ...

在 SQL Server 中如何成功卸離資料庫

有時後我們為了要將資料庫的資料檔(*.mdf)與紀錄檔(*.ldf)複製出來,會需要先暫時卸離資料庫(Detach Database),因為卸離資料庫需要有資料庫的獨佔存取權,但是不管是在測試機或正式機上,資料庫往往都會因為還有連線存在導致資料庫無法卸離,對於這點我通常有兩種作法。

... 繼續閱讀 ...

SQL Server中秘密的PWDENCRYPT與PWDCOMPARE函數

前幾天有個客戶的網站出問題(不是我們開發的),請我們幫他看,主要的問題是他們的網站會員在進行查詢密碼時,會員收到信的時候在密碼的欄位竟然會出現 System.Binary[] 字樣。而我進去資料庫中查看時,發現該會員資料表中的密碼欄位是 varbinary 格式,而我當然不知道他儲存的是什麼值,進而查看他們資料庫中的 Stored Procedure 對於密碼欄位的操作方法,這才發現他們用來驗證會員是否正確登入的方法是使用 PWDCOMPARE 函數。

... 繼續閱讀 ...

手邊有一張速查表(Cheat Sheets)是件很方便的事

我個人有習慣收集一些網路上別人整理的速查表,因為程式開發的細節真的太多了,要能全部背起來不太可能,也沒什麼意義,甚至於有人說程式設計就是一件查詢、複製、貼上的工作而已。對我來說,寫程式首重觀念與經驗,有了完整而正確的觀念,就算記不得要怎麼寫,查詢一下就馬上能寫了;而有了經驗,對於一些難解的 Bug 自然能夠迅速解開。

... 繼續閱讀 ...

介紹好用工具:Oracle SQL Developer

我們一直以來就很少使用 Oracle 資料庫,一年下來也頂多 1 ~ 2 個案子採用 Oracle 的資料庫,所以一直都對 Oracle 資料庫的操作不太熟悉,尤其是用 Oracle 內建的那些超難用工具,更是不想親近,太不人性了。不過今年 Oracle 終於推出了一套 SQL Developer 資料庫管理工具,雖然還是比 Management Studio 遜色很多,不過終究像是個人用的管理工具了。

... 繼續閱讀 ...

如何變更 SQL Server 預設的資料檔路徑與備份檔路徑

當你安裝好 SQL Server 2005/2008 之後,通常相關檔案的預設安裝路徑都會在 C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL 目錄下,而該目錄下有兩個很重要的目錄,分別是 DATA (資料檔儲存目錄) 與 Backup (備份檔儲存目錄),如果你希望將這些重要檔案儲存在其他磁碟機時,直接透過 SQL Server Management Studio (SSMS) 就可以修改 DATA (資料檔儲存目錄) 的預設路徑,不過卻無法透過 SSMS 修改預設備份檔的路徑。

... 繼續閱讀 ...