SQLiteブラウザを使用してOSX連絡先を抽出する[closed]


2

これはこの前の記事をフォローアップしている 役に立つ答え ;私は担当者を持っていたら私はそこにコメントを残していただろう(:あなたが私と同じ質問がある場合は:

まず、しなければならなかった リネーム AddressBook-v22.abcddb で終わる .db 私が私を得ることができる前に接尾辞 SQLite DBブラウザ sqlite3はコマンドラインから開くことができますが、(バージョン3.8.0)はSQLiteデータベースとして認識します。

次に、このデータベースで使用されているデータモデルを考え出すことが私の最大の面倒でした。私にとっては、DBブラウザのGUIを使用して、表を越えて努力するだけの価値がありました。

  • 一次積分テーブルは ZABCDRECORD (なぜAppleは追加しなければならなかったのか ZABCD すべてのテーブル名に?
  • それらを結合することを可能にする他のテーブルの属性の名前は様々です、例えば:

    LEFT JOIN ZABCDPOSTALADDRESS ON ZABCDPOSTALADDRESS.ZOWNER = ZABCDRECORD.Z_PK
    LEFT JOIN ZABCDEMAILADDRESS ON ZABCDEMAILADDRESS.ZOWNER = ZABCDRECORD.Z_PK
    LEFT JOIN ZABCDNOTE ON ZABCDNOTE.ZCONTACT = ZABCDRECORD.Z_PK
    

これらのテーブルに既存の連絡先データを取得することはできますが、sqliteデータベースに対するその後の編集を連絡先に反映させることはできません。 @ bmikeはvCardのインポート/エクスポートの使用を提案していますが、これは確かに回避策です。


2
申し訳ありませんが、私はあなたの質問を手伝うことができません。 SQLite用DBブラウザ
user3439894

私はあなたがに取り組むことで何かを達成できるとは思わない .abcddb これはによって構築されたデータベースだからです Contacts その内部データから Metadata ディレクトリ。
daniel Azuelos

Ask Differentへようこそ。具体的に何を変更したいですか? vCardとしてデータをエクスポートし、そのファイルを操作してからインポートするのが、データベースを一括変更するための最も速い方法です。それ コードはよく文書化されています あるいは、必要に応じて単純化されたsqliteデータベーススキーマにインポートすることもできます。また、質問ごとに1つの質問に固執することができれば、それはここで最もうまくいきます。
bmike

やあ@ bmike、私は連絡先を追求していた .abcddb < - > SQLite接続。はい、私はSQLiteにインポートすることができますが、それは往復することは不可能のようです。それは私が持っていたいと思う「答え」に近づいています。あなたがこれをどのように適合させるために編集して欲しいかを教えてください。
rikb

コードブロックの後に必要なものはすべてうまくいくと思います。別のスキーマを使用するように連絡先アプリを変更するのは広すぎるIMOです。基本的に、もっと狭い最終目標を指定できますか?
bmike
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.