0

私は最近、データベース システムを扱い始めたばかりです。ローカル データベース (sqlite) を持ち、Web サーバー (mySQL) に保存されているデータベースの内容で内部データベースを定期的に更新する必要がある iOS アプリを開発しています。私の質問は、ウェブサーバーからデータを取得してローカルデータベースに保存する最良の方法は何ですか? 思いついたオプションがいくつかありますが、それらすべてが可能かどうかはわかりません

  1. Web サーバー -> XML/JSON -> 送信 -> ローカルで変換してローカル データベースに保存

  2. Webserver->backupFile->Send it->SQLite db にフィード

他のオプションはありますか?取られるデータ量の点でどちらが優れていますか?

ありがとうございました

4

1 に答える 1

0

XML/JSON ルートは、Web サービスにアクセスするデータベース スキーマ/古いバージョンのアプリの更新を処理するのに十分な柔軟性を提供しながら、はるかに単純です。

あなたが言及した2番目のオプションに関しては、SQLステートメントダンプまたはCSVダンプのいずれかを使用する2つのアプローチがあります。でも:

  1. 「デフォルト」(つまり、mysqldump生成された) バックアップ ファイルは、実質的なマッサージなしでは SQLite にインポートされません。

  2. CSV 抽出/インポートを使用すると、スキーマの変更などの点で柔軟性が大幅に低下するため、データ形式が変更される可能性がある場合、おそらく賢明なアプローチではありませ

そのため、実証済みの XML/JSON アプローチに固執することをお勧めします。

送信されるデータの量に関しては、JSON同等の XML よりも小さい場合がありますが、実際には使用される変数/要素名などに依存します (既存のファイル サイズとシリアル化に関して、JSON は XML とどのように比較されるかを参照してください/ deserialisation time?これに関する詳細については質問してください。)

于 2013-08-04T11:04:41.473 に答える