? asked in 電腦與網際網路程式設計 · 1 decade ago

請問有關資料庫的選用問題

假如資料比數在數十萬筆左右,但是單機環境,或是檔案資源共享方式使用

也就是不採用SQL Server 2000或2005

那應該使用什麼檔案型資料庫啊?

開發工具是VB.NET 2005,

Visual Foxpro 9.0好嗎?

還是Access 2003就夠用了?

這兩個那個索引跟搜尋的速度比較佳?

那個針對VB.NET 2005的相容性比較高?

有相關的文獻可以參考嗎?

希望各位高手指教一下~謝謝!!

4 Answers

Rating
  • 振煒
    Lv 5
    1 decade ago
    Favorite Answer

    我是採取比較不同的看法,因為建議不使用FoxPor與Access因為1、Foxpro官方已經不太維護了,因為已經被sql server express給取代了。2、Access效能太差,你的單一資料表如果資料超過10萬筆的話,那效能就會非常的差。3、升級不易,因為Access與Sql Server的語法還是有一些不同處,雖然是同一間的產品,但是升級還是需要一些時間,非常的麻煩。4、沒有進階的功能,如Trigger、Stored Procedures…等。我是建議你可以考慮使用Sql Server 2005 Express(免費版,而且也可以使用異地備援方案-自已開發的),我現在的專案開發都使用這個,而且功能強大,萬一真的不敷使用時,也可以考慮直接升級。

    Source(s): 自已的經驗
  • 1 decade ago

    請問什麼是 "外部" Database與Recordset宣告?

    "資料庫必須做修復" 是指壓縮修復嗎? 不是在 工具->選項->關閉資料庫時壓縮 勾選即可嗎?

  • 1 decade ago

    投Cary一票

    但同時有限度支持ㄚ旺

    首先建議別考慮FoxPro

    再來是看你的架構之延展性

    要是考慮其擴充性那就是SQL 2005 Express為最佳選擇

    但是假使架構不會再擴充Access也是一個不錯的選擇

    但是使用大量的Access有其限制性

    再者最近兩代技術並不非常適用Access

    也就是說ADO.NET 1.1/2.0與 ADO 2.X等不是ACCESS的麻吉

    真正最適合Access的是DAO

    對了有興趣以此為事業的話也可以試看看

    MySQL與PostgreSQL

    免費與穩定是這兩個資料庫的一大特色

    當然啦以.NET 來開發的話是有一些困難度

  • ㄚ旺
    Lv 5
    1 decade ago

    以10萬筆左右,且使用單機環境,基本上使用SQL 與Access和這三Visual Foxpro 種資料庫,我會選擇Access。

    主要原因是架設SQL光啟動,就耗掉極多的記憶體,當然這並非為單機系統的選擇。

    Visual Foxpro 我對他的印象還停在,以前DBase中,就索引與搜尋功能以及日後擴充維護,與維護成工具本上都並非上上之選。

    Access 在單機與網路功能上的支援,當然不在話下。且日後支援Access 所開發出來的元件應該也不至於消失,就我這幾年來設計的資料庫,都使用Access 。

    我推薦使用Access 的原因,主要是他兼具擴充管理效能等,最主要也是由於他建置容易幾乎不必花太多工作即可使用,但他並不是沒有缺點。

    Access 我用過之後,也有可能是設計上的瑕疵,約半年到一年資料庫必須做修復一次,這部分不似Visual Foxpro來的穩定,但是Access可已設計一個程式自行修復。問題還不大。

    關於效能部分,我有一個算是私門的小技巧,三年前設計過一個資料庫中的資料表,裡面有大於150萬筆記錄,結果光開啟資料表就花掉20秒,別說客戶不能接受,我自己都覺的不可思議。

    遇到開啟一個大於5萬筆記錄的資料表,建議使用一個外部Database與Recordset宣告,開啟後記得別關閉他,等程式離開後在關閉即可,不知道為什麼,這樣撰寫出來的資料庫卻不容易壞掉。且你的系統效能會快非常非常多。

    當然還有很多的小技巧可以尋找,若是你使用Visual Foxpro可能在找解決方案時,比較不容易找到。

    最後補記一個,只要人類還有經濟活動,資料庫就不會消失。寫資料庫有"錢"途呀!

    以上是敝人的看法與撰寫建議,希望對你有所幫助。

    2006-08-20 18:16:47 補充:

    Sql Server 2005 Express 這個我還沒用過。沒有轉換的主要原因是因為,我為DAO/ADO建立了極多的模組庫與ActiveX元件,積重難返也。

    整個模組庫與ActiveX元件重寫,這可不是開玩笑的,因此也就沒太大心思去置換,看完 Cary大大敘述,我也想去嘗試一下,換換新血了。

Still have questions? Get your answers by asking now.