我有一個CakePHP/MySQL應用程序,它將作業數據存儲在各種表中。CakePHP將數據快照保存爲XML/JSON
作業數據用於最終生成報告。不過,我需要實現創建報告版本因此,如果工作數據被修改,創建一個新的報告版本的方式。它必須保留創建的所有版本的副本。
我想我會由與工作表取任務數據的XML快照相關的報告表處理這個。每當生成一個報告時,它會創建一個新的記錄,其中包含一個唯一的ID和關聯的作業ID以及該點數據的XML「快照」。
這是一個明智的做法嗎?我不願意將xml快照存儲爲文件,因爲會生成幾千個報告,並且希望將數據保存在數據庫中。
最後,我如何最好地將XML保存到數據庫?我使用XML Helper來生成數據的XML,但無法保存。我確定這是由於生成的XML的大小(我測試的作業生成了600多行XML,並且在手動插入到DB中時以41KiB進入)。
我對這個問題完全錯誤嗎?這感覺是對的,因爲我需要存儲數據的「快照」,然後可以在以後的處理中使用XML Parser。 JSON會更實用嗎(我對於如何使用JSON數據以及它是否像結構化一樣都不太熟悉......)
如果有人能幫助我解決這個問題,我將不勝感激。
更新:我已經設法通過其得到它保存XML它保存功能生成,然後將它添加到保存在$ data數組,多數民衆贊成。但它仍然在儲存空間。任何想法更有效地做到這一點?
回覆:[JSON vs XML](http://www.json.org/xml.html) – deizel