2009-06-03 143 views
1

我必須將關係數據(文本,數字和圖片)存儲到XML文件中。我想維護數據和表結構之間的關係。將關係數據庫存儲爲XML

我該如何去做呢?

我的Windows Mobile應用程序使用Windows Communication Foundation(WCF)來獲取數據。一旦獲得數據,它就會將它們存儲到一個XML文件中。

WCF使用ADO.NET實體框架來檢索數據。

我將使用SQL Server 2008的

的數據將被使用,以顯示它的應用。我不想使用SQL Server CE來存儲數據,因爲它比較慢。也許,不使用XML文件,我可以使用文本純文件來存儲文本和數字,以及圖像文件來存儲圖像。

簡而言之,XML將是一種使用SQL Server CE或WCF存儲數據的方式。

謝謝!

+0

您需要更清楚。你想在哪裏轉換爲XML - 在服務中,還是在調用服務的應用程序中?服務是使用實體框架還是調用服務的應用程序?一旦將數據轉換爲XML,您將如何處理這些數據? – 2009-06-03 23:46:01

+0

我把更多的細節。 – VansFannel 2009-06-04 06:06:13

回答

1

感謝您的額外細節。

我的建議是先試試SQL Server CE。對於你正在做的事情,它可能並不會更慢。您不用重新發明輪子而節省的時間可能會更好地用於加速應用程序的其他部分。假設你不需要長時間存儲數據,也不需要太多工作,我建議將數據從Web Service返回類型複製到DataSet中。DataSet類型有一個可以保存數據的WriteXml方法,以及一個可以讀取數據的ReadXml方法。

0

您正在使用什麼SQL Server?某些服務器允許您爲查詢請求XML響應。這可以爲你節省很多工作。

編輯:既然你已經指定你將使用MSSQL 2008,你可能會很幸運。在MSSQL 2005和更高版本中,有一個「FOR XML」關鍵字,它允許您以XML形式獲得結果。試一試。

+0

我打算使用SQL Server 2008. – VansFannel 2009-06-04 06:02:41

0

你是什麼意思,「維護數據和表結構之間的關係」?您是否談論的不僅僅是維護XML節點屬性中的源數據庫記錄的ID?一旦擁有它,你需要怎樣處理XML數據?它會被編輯,必須重新應用於數據庫嗎?

更多的問題比我的回答....抱歉。

1

數據集呢?定義表格和關係,將數據加載到數據集中,並將其保存爲XML(WriteXml方法)

1

將您的XML格式定義爲XSD。如果您使用Visual Studio,請使用添加新的DataSet,並且「自定義工具」將自動創建基於DataSet的強類型的一組類。您可以使用約束來定義表格和關係。在Visual Studio中很容易。如果您是Visual Studio厭惡,您可以手動創建XSD並使用xsd.exe生成您的代碼。

一旦您擁有充滿數據的強類型DataSet,就可以通過調用WriteXml將其序列化爲XML流。

相關問題