ฉันแก้ปัญหาด้วยการสร้างตารางใหม่ตามที่ hotwebmatter แนะนำ มันค่อนข้างง่ายเพราะฉันสามารถใช้โครงสร้างของฟิลด์คอลเลกชันฟิลด์อื่น ๆ และเพียงแค่เปลี่ยนชื่อฟิลด์ค่า โครงสร้างมีลักษณะดังนี้:
field_collection_item__field_sprechzeiten_zeitraum: ตาราง
+ คอลัมน์
กำ: varchar (128)
ลบแล้ว: tinyint(4) NN
entity_id: int(10) เอ็นเอ็น
revision_id: int(10)
รหัสภาษา: varchar(32) NN
เดลต้า: int(10) NN
field_sprechzeiten_zeitraum_value: varchar(255)
+ ดัชนี
มัด: ดัชนี (มัด) ประเภท btree
revision_id: ดัชนี (revision_id) ประเภท btree
+ กุญแจ
#1: PK (entity_id, ลบ, langcode, delta)
หลังจากสร้างสิ่งนี้ ฉันล้างเอนทิตีคอลเลกชันฟิลด์ (มีลิงก์ในส่วนการถอนการติดตั้ง) และลบฟิลด์ที่เหลือในประเภทเนื้อหาของฉัน
ช่องทำเครื่องหมายเพื่อถอนการติดตั้งโมดูลยังคงปิดอยู่ ดังนั้นฉันจึงลบทุกตารางในฐานข้อมูลที่มี field_deleted_data และ field_deleted_revision สิ่งนี้ไม่ได้ช่วย ดังนั้นฉันจึงค้นหาในตารางการกำหนดค่าสำหรับบรรทัดที่มีชื่อ core.extension ที่นี่ ฉันยกเลิกการซีเรียลข้อมูล นำส่วนที่มีการรวบรวมฟิลด์ออก และทำให้เป็นอนุกรมอีกครั้ง
ในระหว่างนี้ฉันรันงาน cron และล้างแคชเสมอ
ช่องทำเครื่องหมายเพื่อถอนการติดตั้งยังคงถูกปิดใช้งาน และบังเอิญฉันเห็นว่าช่องทำเครื่องหมายคอลเลกชันฟิลด์ในส่วนการติดตั้งโมดูลไม่ได้ถูกเลือกอีกต่อไป ฉันตรวจสอบและพยายามติดตั้ง มันเริ่มต้นขึ้นและฉันถูกส่งต่อไปยังส่วนการติดตั้งโมดูล คอลเลคชันฟิลด์ยังไม่ถูกเลือก และเมื่อฉันตรวจสอบแท็บถอนการติดตั้ง ในที่สุดมันก็หายไป
เรื่องนี้เหนื่อยมาก แต่ก็จบลงด้วยความสุข