dsshsta97935 2015-05-01 04:43
浏览 70
已采纳

激活插件时,使用PHP在WordPress数据库中创建两个表

I am having a problem with my plugin that is suppose to create a table in the WordPress database when it is activated. My current code is as follows:

register_activation_hook(__FILE__, 'wp_table_install');

function wp_table_install(){
global $wpdb;
global $db_version;

$sql ="CREATE TABLE IF NOT EXISTS 'st_support_tickets'
('id' mediumint(8) unsigned NOT NULL auto_increment,
'ticket_id' varchar(36) NOT NULL,
'ticket_user_id' varchar(36) NOT NULL,
'ticket_description' TEXT default NULL,
'ticket_priority' varchar(255) default NULL,
'ticket_status' varchar(255) default NULL,
'ticket_type' varchar(255) default 'Private',
PRIMARY KEY ('id')) 
AUTO_INCREMENT=1;

CREATE TABLE IF NOT EXISTS 'st_support_priorities' 
('id' mediumint(8) unsigned NOT NULL auto_increment,
'ticket_user_id' varchar(36) NOT NULL,
PRIMARY KEY ('id'))
AUTO_INCREMENT=1;
";

require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
add_option("db_version", $db_version);
}

What is stopping these tables from being created? Is it the sql query or the syntax or what?

  • 写回答

4条回答 默认 最新

  • douqiao1983 2015-05-03 10:50
    关注

    To solve this problem I remove all ' characters from the sql statements excluding around default values. Eg:

    $sql1 ="CREATE TABLE IF NOT EXISTS  st_support_tickets 
    (id  mediumint(8) unsigned NOT NULL auto_increment,
     ticket_user_id  varchar(36) NOT NULL,
     ticket_description TEXT,
     ticket_priority  varchar(255) default NULL,
     ticket_status  varchar(255) default NULL,
     ticket_type  varchar(255) default  'Private',
    PRIMARY KEY ( id ))
    AUTO_INCREMENT=1;
    ";
    
    $sql2 = "CREATE TABLE IF NOT EXISTS st_support_priorities 
    ( id  mediumint(8) unsigned NOT NULL auto_increment,
     ticket_priority  varchar(36) NOT NULL,
    PRIMARY KEY ( id ))
    AUTO_INCREMENT=1;
    ";
    

    Had no problems after this.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)