gpt4 book ai didi

database - Wordpress dbDelta 无法运行

转载 作者:搜寻专家 更新时间:2023-10-30 21:47:55 24 4
gpt4 key购买 nike

我目前正在为客户编写一个插件,虽然它通常运行良好,但我发现 dbDelta 不允许我创建插件激活所需的表。

我正在运行以下代码来绑定(bind)激活函数:

register_activation_hook(__FILE__, 'adminInstallation');

这是函数本身:

function adminInstallation(){
global $wpdb;

$objectEquipment = 'wp_object_equipment';
$equipmentSQL = "CREATE TABLE ".$objectEquipment." (
id mediumint(9) NOT NULL AUTO_INCREMENT,
name tinytext NOT NULL
);";

require_once(ABSPATH.'wp-admin/includes/upgrade.php');
$equipment = dbDelta($equipmentSQL);
}

运行后,我正在检查数据库,但没有添加任何表。尝试转储错误只会导致 Wordpress 告诉我有意外输出,但它不会让我看到服务器返回的实际消息。这个问题已经困扰我好几个小时了,在解决之前我无法继续。这里有没有人知道它为什么会这样做?

据我所知,所有代码都是有效的,这是我编写的第三个插件。我什至尝试使用我以前的代码,但这也不起作用。

编辑:我尝试在插件激活后运行函数并转储 dbDelta 响应。它报告表已创建,但数据库中仍然没有任何新内容。有什么想法吗?

提前致谢!//乔纳森

最佳答案

来自 http://codex.wordpress.org/Creating_Tables_with_Plugins :

  • You have to put each field on its own line in your SQL statement.
  • You have to have two spaces between the words PRIMARY KEY and the definition of your primary key.
  • You must use the key word KEY rather than its synonym INDEX and you must include at least one KEY.

关于database - Wordpress dbDelta 无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7230021/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com