ความแตกต่างระหว่าง 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

ใช่มีหลายสถานที่ที่ผู้ชมจะไม่ตัดมัน ความหายนะที่ใหญ่ที่สุดในการค้นหาตารางโดยตรงคืออะไร?
Mike

ใน D6 มันเป็นฟิลด์ที่สามารถเปลี่ยนจาก tabtle content_type_*เป็นตารางของตัวเองดังนั้นคุณควรใช้ API เพื่อสร้างแบบสอบถามของคุณ ใน D7 สิ่งนี้จะไม่เกิดขึ้นอีกแล้วดีกว่า;)
tostinni

1
คำตอบนี้ไม่ชัดเจน 100% หากฉันต้องการเขียน SQL เพื่อให้สามารถส่งออกข้อมูลที่เป็นปัจจุบันมากที่สุดฉันสามารถเพิกเฉยต่อfield_revision_field_*ตารางหรือฉันจำเป็นต้องรวมเข้ากับการส่งออกของฉันอย่างใดและถ้าเป็นเช่นนั้นได้อย่างไร
MikeSchinkel
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.