首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >dbDelta没有修改表

dbDelta没有修改表
EN

Stack Overflow用户
提问于 2014-06-06 18:16:12
回答 3查看 72关注 0票数 0

我试图在我的桌子上添加一个字段订单:

代码语言:javascript
运行
复制
$tables = array(Gun => 6,Color => 2,Holster => 2,Canter => 1,Hand => 1);
foreach($tables as $key => $val) {
    $table_name = $wpdb->prefix . 'GunInventory'.$key;
    $sql = "CREATE TABLE $table_name (
            GunInventory".$key."Id int(11) NOT NULL AUTO_INCREMENT,
            Name varchar(200) NOT NULL,
            Value char(".$val.") NOT NULL,
            Price decimal(10,2) NOT NULL,
            Order INT NOT NULL,
            UNIQUE KEY  GunInventory".$key."Id (GunInventory".$key."Id)
        );";
    dbDelta($sql);
}

问题是没有在我的表上创建字段顺序,我尝试从表中删除字段并重新安装插件,并且我的表保持不变。但是,脚本将创建表。

我试着打开调试,但没有发现任何错误。

EN

Stack Overflow用户

发布于 2014-06-06 18:18:19

ORDER是MYSQL中的保留关键字。要么使用backticks (`)转义它,要么选择不同的名称。有关详细信息,请参阅这个职位

此外,如果启用错误报告,除非数组中的这些键是常量,否则页面上应该有警告。

注意:使用未定义的常量枪-假定的“枪”. 注意:使用未定义的常量颜色-假定的“颜色”在…… 等

http://3v4l.org/8PLuh

它工作的原因是这些键正在被PHP转换,但是你真的应该引用他们的话启用错误报告

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24088257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档