2014-12-23 91 views
1

$ db_name = $ wpdb-> prefix .'demo1';在Wordpress中激活插件時未創建數據庫表

功能install_plugin() {

global $wpdb; 
    global $db_name; 
    $sql="CREATE TABLE".$db_name."(
    `id` int(9) NOT NULL AUTO_INCREMENT, 
    `name` varchar(255) NOT NULL, 
    `email` varchar(255) NOT NULL, 
    `password` varchar(255) NOT NULL 
    );"; 

    require_once(ABSPATH.'wp-admin/includes/upgrade.php'); 
    dbDelta($sql); 

}

register_activation_hook(FILE, 'install_plugin');

+0

你有一個錯字。在「CREATE TABLE」後面添加一個空格。我想你想用你的'id'字段作爲主鍵。 – vaso123

回答

0

因爲你創建表的語法是錯誤的:

不正確的表定義;只能有一個自動柱,它必須定義爲一個關鍵

嘗試以下

CREATE TABLE ".$db_name."(
    `id` int(9) NOT NULL AUTO_INCREMENT, 
    `name` varchar(255) NOT NULL, 
    `email` varchar(255) NOT NULL, 
    `password` varchar(255) NOT NULL, 
PRIMARY KEY (`id`) 
    ); 
相關問題