field_dataテーブルとfield_revisionテーブルの違いは?


11

多くのカスタム関数があります。私はこれが正しいことを確認したいだけです。
ノードの最新バージョン(ライブバージョン)が必要な場合は、field_data_field_xyzテーブルに移動しますか?

私の理解では、field_revision_field_xyz古いバージョンはすべて保持されていますか?

回答:


12

それは正しい:フィールドSQLストレージの操作

データベーステーブル:

  • {field_data_ [field_name]}フィールドの標準データストレージ。
  • {field_revision_ [field_name]}フィールドの標準リビジョンストレージ。

1
これらのテーブルを直接クエリすることはあまりお勧めできませんが、多くのプロジェクトで実行します。EntityFieldQueryとこの回答ご覧ください。
-tostinni

ええ、ビューがそれをカットしない場所がたくさんありました。ただし、テーブルを直接クエリすることの最大の欠点は何ですか?
マイク

D6では、フィールドがcontent_type_*テーブルから独自のテーブルに変更される可能性があるため、クエリを作成するにはAPIを使用した方が良いでしょう。D7では、これはもう起こらないので、より良いです;)
tostinni

この答えは完全に明確ではありません。最新のデータをエクスポートできるようにSQLを記述する必要がある場合、単にfield_revision_field_*テーブルを無視できますか、それとも何らかの方法でエクスポートに組み込む必要がありますか?
MikeSchinkel
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.