iTunesのバックアップSQLiteとPlistファイルからデータを問い合わせる方法

更新しました
によって
Aidan Fitzpatrick
Aidan Fitzpatrick
Cover image for: iTunesのバックアップSQLiteとPlistファイルからデータを問い合わせる方法

一部のユーザーは、エキスパートモードを使用してバックアップに保存されている生ファイルを直接操作したいと思うかもしれません。これらは多くの場合、SQLiteデータベース( .sqlite3.sqllitedb 、および.db )またはPlist(通常は.plist )ファイルで構成されています。

iPhone Backup ExtractorにはPlistエディタが内蔵されており、ユーザーは自分のデータをPDF、HTML、VCard、ICAL、VCF、またはCSV形式に自動的にエクスポートして簡単にアクセスできます。しかし、これらのファイルからデータを抽出したいユーザーはSQLiteデータベースクライアントが必要です。

SQLiteデータベースを使用する方法は?

ユーザーはこれら2つのアプリケーションのどちらかを試したいと思うかもしれません:

  • SQLiteのDBブラウザ 。 DBブラウザーは、以前はSQLiteデータベースブラウザーと呼ばれていました。 Windows向けの推奨ツールであり、無料です。また、macOSのバージョンも提供します。
  • ベース2 。 Baseは、macOSに推奨されるSQLiteツールであり、直接ダウンロードおよびApp Storeアプリとして利用できます。

Appleのデータベースファイルを直接操作するにはどうすればよいですか?

例として、連絡先データに手動でアクセスするには、ユーザーはLibray/AddressBook/AddressBook.sqllitedb抽出し、次に抽出されたファイルをSQLiteビューアで開く必要があります。 [Execute SQL]タブを選択し、[SQL string]フィールドに貼り付けます。

SELECT ABPerson.first, ABPerson.last, ABMultiValue.value
FROM ABPerson, ABMultiValue
WHERE ABMultiValue.record_id = ABPerson.ROWID

[クエリの実行]ボタンを押すと、[返されたデータ]フィールドに表示されている完全な連絡先リストが返されます。

SMSデータにアクセスするには、 Libray/SMS/SMS.db抽出し、抽出したファイルをSQLiteビューアで開き、[データの参照]タブを選択して、[テーブル]ドロップダウンから[メッセージ]を選択します。虫眼鏡ボタンをクリックすると、ユーザーは「返されたデータ」フィールドにSMSの全履歴を表示するはずです。

ユーザーの1人が以下のクエリを参考にしたので、ユーザーのためにここに含めています。データベースの形式はiOSのバージョンによって異なるため、これらのクエリは時間の経過とともに変わる必要があることに注意してください。

SELECT ROWID,
  ABPerson.first,
  ABPerson.last,
  ABPerson.Organization AS organization,
  ABPerson.Department AS department,
  DATETIME(ABPerson.Birthday + STRFTIME('%s', '2001-01-01 00:00:00'), 'unixepoch', 'localtime') AS Birthday,
  ABPerson.JobTitle as jobtitle,
  ABPerson.Organization,
  ABPerson.Department,
  ABPerson.Note,
  ABPerson.Nickname,
  DATETIME(ABPerson.CreationDate + STRFTIME('%s', '2001-01-01 00:00:00'), 'unixepoch', 'localtime') AS Created,
  DATETIME(ABPerson.ModificationDate + STRFTIME('%s', '2001-01-01 00:00:00'), 'unixepoch', 'localtime') AS Modified,
  ( SELECT value FROM ABMultiValue
    WHERE property = 3 AND record_id = ABPerson.ROWID AND label = (
      SELECT ROWID FROM ABMultiValueLabel
      WHERE value = '_$!<Work>!$_'
    )
  ) AS phone_work,
  ( SELECT value FROM ABMultiValue
    WHERE property = 3 AND record_id = ABPerson.ROWID AND label = (
      SELECT ROWID FROM ABMultiValueLabel
      WHERE value = '_$!<Mobile>!$_'
    )
  ) AS phone_mobile,
  ( SELECT value FROM ABMultiValue
    WHERE property = 3 AND record_id = ABPerson.ROWID AND label = (
      SELECT ROWID FROM ABMultiValueLabel
      WHERE value = '_$!<Home>!$_'
    )
  ) AS phone_home,
  ( SELECT value FROM ABMultiValue
    WHERE property = 4 AND record_id = ABPerson.ROWID AND label IS null
  ) AS email,
  ( SELECT value FROM ABMultiValueEntry
    WHERE parent_id IN (
      SELECT ROWID FROM ABMultiValue WHERE record_id = ABPerson.ROWID
    ) AND key = (
      SELECT ROWID FROM ABMultiValueEntryKey WHERE lower(value) = 'street'
    )
  ) AS address,
  ( SELECT value FROM ABMultiValueEntry
    WHERE parent_id IN (
      SELECT ROWID FROM ABMultiValue WHERE record_id = ABPerson.ROWID
    ) AND key = (
      SELECT ROWID FROM ABMultiValueEntryKey WHERE lower(value) = 'city'
    )
  ) AS city
FROM ABPerson
ORDER BY ABPerson.first

私たちはここでさまざまなアプリのため重要なファイルのリストを管理しています。

日付と時刻のフィールドは数値として返されるだけですが、それらをどのように解釈できますか

データベース内のいくつかのフィールドを解釈するのに苦労するかもしれません。忘れないでください、iPhone Backup Extractorは自動的にデータを抽出します。ただし、単独で使用する場合は、日付フィールドの位置に応じて、日付が2001-01-01からの秒数または1970-01-01からの秒数で表されることに気付くはずです。 Excelでは、 =1/1/2001 + A1/60/60/24ような式を使用できます。ここで、 A1はあなたの時間データです。現地のタイムゾーンを考慮して値を調整する必要があるかもしれません。

著者について

Aidan Fitzpatrickは、世界初のiPhoneデータ復旧ツールであるiPhone Backup Extractorを構築した後、2008年にReincubateを設立しました。彼はGoogleで起業家精神について話していて、起業家組織のリーダーシップアカデミーを卒業しています。

バッキンガム宮殿の最高経営責任者

上の写真は、バッキンガム宮殿で開催されたReincubateのHM Queen ElizabethⅡのチームのメンバーです。 プライバシー、安全性およびセキュリティに関する私たちの立場を読んでください。

どのように我々は助けることができます?

サポートチームがお手伝いします!

営業時間は月曜日から金曜日の午前9時から午後5時(GMT)です。 時間は現在 4:29 AM GMTです。

1営業日以内に、お返事を差し上げます。メールアドレスはこちら。

サポートセクションに移動 › お問い合わせ ›
私たちの素晴らしいサポートチーム

この記事を改善できますか?

ユーザーからの連絡をお待ちしています。電子メールを送信したり、コメントを残したり、ツイートしたりしないでください。 @reincubate?

© 2008 - 2019 Reincubate Ltd. 無断複写・転載を禁じます。 イングランドとウェールズに登録 #5189175, VAT GB151788978. Reincubate®は登録商標です。 プライバシーと利用規約. マルチファクタ認証をお勧めします。 ロンドンで愛と建てられた。