2

過去にいくつかのSQLCompactdb破損の問題があり、これらに関する記事を読んだことがありますが、データベースsdfファイルをストレージカードに保存すると、db破損によるデータ損失のリスクが大幅に高まることがわかりました。

sdfファイルをストレージカードに保存しますか?それが原因で何か問題がありましたか?SQL Compactで使用するための安定性とセキュリティに関して、SDカードの特定のブランドまたはモデルを推奨する場合は何に注意する必要がありますか?

4

1 に答える 1

2

データベースを永続的なストレージ ボリューム (カードまたは内部フラッシュ) に配置すると、破損の可能性が高くなります。これは、ほとんどの場合、スリープ ウェイク サイクルが原因です。デバイスが中断されると、ストアは通常アンマウントされ、再開されると再マウントされます。OEM の実装に応じて、接続が破棄されても存続する場合とされない場合があります (スリープ/ウェイク サイクルを通じて保持された接続が常に失敗するデバイスを見たことがありますが、常に破損しているわけではありません)。

実行中にデバイスがサスペンド/スリープ状態になるデバイスに対する私の典型的な方法論は、データベースとのすべての「トランザクション」の後に常にデータベースを閉じることです。はい、これにより動作が遅くなりますが、破損と接続の無効化の両方が大幅に減少します。

DAL の電源マネージャー イベントを監視し、電源状態の変更中に処理中のデータ アクションを破棄して再試行することで、さらに極端にしました。

于 2010-04-26T12:58:07.560 に答える