程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server Express 數據庫自動部署問題及解決

SQL Server Express 數據庫自動部署問題及解決

編輯:關於SqlServer


    這幾天做了一個程序,VS 2005 + SQL Server Express,仔細查閱文檔,發現 SQL Server Express 支持 XCOPY 部署方式,也就是說,只要目標計算機有了 SQL Server Express,那麼只需要把數據庫拷貝過去,可以在程序的同一個目錄中,然後在連接字符串中配置 AttachDBFileName 參數即可。數據庫會自動掛接到 SQL Server Express 中,運行完後自動 Deattch。感覺不錯,照貓畫虎,結果出現了一個錯誤:“數據庫已被壓縮,無法建立,需要解壓縮”。暈死,什麼時候壓縮了?莫非是 Shinrk 的問題?搞了 n 個小時,無解,睡覺。

    次日再戰,查閱資料無解,查閱 Internet 無解,想放棄,又捨不得。無意中發現,在管理界面中 Attach 數據庫居然也是這個錯誤,而在原先目錄中的數據庫居然沒問題。把數據庫拷貝到程序目錄(在 D: 盤,SQL Server Express 安裝在 C: 盤)就會出錯。不會是這個問題吧?

    將程序目錄移動到 C 盤,居然一切正常,然後徹底暈死。難道自動掛接數據庫必須在 C 盤???

    另,如果將數據庫文件設置為只讀,則無論在哪個盤都可掛接,只是成為只讀數據庫。

    雖說解決了問題,可是不懂原理,是 Bug,還是我的系統問題?

    其實,Sybase 的 SQL Anywhere 真的不錯,在啟動數據庫的時候才啟動數據庫管理系統,系統運行結束,數據庫管理系統自動結束,如果 SQL Server Express 也支持這個功能就好了,我可不喜歡不用數據庫的時候還有一個 SQL Server 服務在運行。Access 連存儲過程都不支持,微軟,想說愛你並不容易。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved