在 Wordpress 中激活插件时未创建数据库表
Posted
技术标签:
【中文标题】在 Wordpress 中激活插件时未创建数据库表【英文标题】:Databse Table Not Creating When Activating The Plugin In Wordpress 【发布时间】:2015-02-21 09:48:17 【问题描述】:$db_name=$wpdb->前缀 .'demo1';
函数 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');
【问题讨论】:
你有一个错字。在CREATE TABLE
之后添加一个空格。而且我认为您想使用 id
字段作为主键。
【参考方案1】:
因为您的创建表语法错误:
表定义不正确;只能有一个自动列,并且必须将其定义为键
尝试关注
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`)
);
【讨论】:
以上是关于在 Wordpress 中激活插件时未创建数据库表的主要内容,如果未能解决你的问题,请参考以下文章