Удаляет ли dbDelta столбцы?

Я создал таблицу, используя функцию dbDelta, а затем удалил несколько столбцов и добавил несколько. Новые столбцы создавались, но старые столбцы не удалялись из таблицы.

Есть ли другой способ, которым я должен удалять столбцы из таблицы?

Насколько мне известно, dbDelta() в основном используется для добавления таблиц в базу данных. Он также может добавлять или изменять столбцы. Чтобы удалить столбцы, вы должны использовать $wpdb->query() :

 global $wpdb; $table = $wpdb->prefix . 'table_name'; $wpdb->query( "ALTER TABLE $table DROP COLUMN column_name" ); 

Нет, dbDelta может добавлять или изменять столбцы, но не бросать их.

Код для функции dbDelta находится в wp-admin / includes / upgrade.php. Вы можете проверить, что он способен на это.