0

我正在使用此代码创建一个表,但它不工作。我尝试了单行 SQL 查询,但也无法正常工作(不确定这是无意义的尝试)。有没有人可以立即帮助我解决这个问题?

function rswl_activaiton(){
    global $wpdb;
    require_once(ABSPATH.'wp-admin/includes/upgrade.php');
    $table_name = $wpdb->prefix.'rswl_entries';
    $charset = $wpdb->get_charset_collate();
    if( $wpdb->get_var( "SHOW TABLES LIKE ".$table_name ) != $table_name ){
        $sql = "CREATE TABLE $table_name ( 
            rswl_entry_id INT(10) NOT NULL AUTO_INCREMENT,
            rswl_name VARCHAR(100) NOT NULL,
            rswl_model VARCHAR(100) NOT NULL,
            rswl_date VARCHAR(100) NOT NULL,
            rswl_ebay_id VARCHAR(100) NOT NULL,
            rswl_email VARCHAR(100) NOT NULL,
            rswl_status VARCHAR(100) NOT NULL
            PRIMARY KEY (rswl_entry_id)
        ) $charset;";
        dbDelta( $sql );
    };
}
register_activation_hook( __FILE__, 'rswl_activaiton' );
4

1 回答 1

0

我自己解决了这个问题。之后我缺少逗号 (,)rswl_status VARCHAR(100) NOT NULL

$sql = "CREATE TABLE $table_name ( 
            rswl_entry_id INT(10) NOT NULL AUTO_INCREMENT,
            rswl_name VARCHAR(100) NOT NULL,
            rswl_model VARCHAR(100) NOT NULL,
            rswl_date VARCHAR(100) NOT NULL,
            rswl_ebay_id VARCHAR(100) NOT NULL,
            rswl_email VARCHAR(100) NOT NULL,
            rswl_status VARCHAR(100) NOT NULL,
            PRIMARY KEY (rswl_entry_id)
        ) $charset;";
于 2020-11-27T20:17:01.083 回答