我使用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。您可以检查它在那里的功能。
我的函数中有以下代码。php$code = \'EUR\'; global $wpdb; $query = \'SELECT * FROM \'; $query .= $wpdb->get_blog_prefix() . \'fxbase \'; $query .= \'WHERE code= \'.$code; $data = $wpdb->get_row( $wpdb->prepare( $query ), ARRAY_A ); 问题