資訊: 使用多個資料錄集的 SQL Server CE 資料庫的效能

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

271931
本文已封存。本文係以「現狀」提供且不會再更新。
結論
SQL Server 2000 Windows CE 版支援只有單一連接到資料庫。如果您開啟到相同資料庫的多個連線,額外的 Connection.Open 呼叫提供明確的錯誤 (檔案共用違規) 25035 SSCE_M_FILESHAREVIOLATION:
Source: Microsoft® SQL Server™ 2000 Windows® CE Edition Number: 80004005NativeError: 25035Description: Unspecified Error				
SQL CE 線上叢書 》 顯示下列,如果您要搜尋 25035 上:
25035 檔案共用違規 SSCE_M_FILESHAREVIOLATION
其他相關資訊
Windows CE 裝置或 Pocket PC 上的兩個應用程式無法同時開啟相同的 SQL CE 資料庫的連接。

這種行為是經過設計規劃的。內部的應用程式可以傳遞連線物件周圍,並建立多個資料錄集。本文將告訴您,如何將多個資料錄集用於與 SQL CE 應用程式的效能。

SQL CE 並不允許您開啟一個以上的作用中連線到相同的資料庫一次。SQL CE 引擎可以支援大量同時開啟資料錄集的上一個連線。但是,有例如程式設計環境,與鎖定問題的可用記憶體的其他限制因素。 如果您使用多個資料錄集相同的物件 (通常使用交易) 上,則鎖定變得的問題。

當您使用 SQL CE 應用程式中的多個資料錄集時,以下是一些實用的秘訣:
  • 包括資料指標和資料錄集的開啟物件的數目減至最少。Windows CE 通常是記憶體限制平,大型資料庫可以公開您的應用程式中的記憶體問題,如果您不小心。
  • 當您開啟資料錄集透過 SQL 陳述式 (例如,SELECT * FROM TABLE),大量的工作,才能編譯、 最佳化,並執行查詢。這些作業都比開啟 (藉由使用 adCmdTableDirect 旗標) 的基底資料表更昂貴。
下列是針對 SQL CE 的資料指標的合理使用的一些範例:
  • 在背景中有螢幕繪製的一個資料指標,一個用於更新/插入到相同的資料。

    注意: 取決於您的游標類型的資料值可能不會重新整理基礎資料的變更。請參閱 SQL CE 線上叢書 》 主題 資料指標型別,如需詳細資訊。
  • 有幾個經常在應用程式中使用的資料表開啟。
  • 有一個資料指標開啟查詢 (SELECT * FROM table1 WHERE col1 > 2),另一個開啟進行編輯和更新對該資料指標在基底資料表上。
参考
如需詳細資訊按一下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
274112資訊: 效能的秘訣和有效率的方式為 SQL CE 處理記憶體

警告:本文已自動翻譯

內容

文章識別碼:271931 - 最後檢閱時間:10/21/2013 00:47:23 - 修訂: 1.1

  • Microsoft SQL Server 2000 Windows CE Edition
  • kbnosurvey kbarchive kbmt kbinfo KB271931 KbMtzh
意見反應