您的位置:首页 > 大数据 > 人工智能

Integrity constraint violation: 1052 Column 'id' in order clause is ambiguou

2015-04-16 22:05 459 查看
在thinkphp的关联模型测试中出现了这个问题,如题为

违背完整性约束条件,id列模棱连可

贴出我的many to many配置

[code]"class"=>array(
                    'mapping_type' => self::MANY_TO_MANY,   //关系类型:多对多
                    'foreign_key' =>  'uid',   //主表在中间表中的字段名称
                    'relation_foreign_key' =>  'cid',   //关联表(副表)在中间表中的字段名称(外键)
                    //安装的时候表前缀一定要更改//debug//不能使用C()动态改变
                    'relation_table' => 'clyc_user_interested',  //中间表的表名(多对多关系中必须指定)
                    'mapping_fields' => 'classname', //只读取关联表(副表)中的部分字段,不指定则为全部字段
                    'mapping_order' => 'id' ,//排序要不要无所谓
                    'mapping_limit' => 3,     //返回记录数
            ),


引发这次完整性约束的罪魁祸首就是mapping_order,这里填的id,然后thinkphp的RelationModel不知道是哪个表的id,

这里我们在排序时候就要写明白是哪个表的,由于表的命名是这样的

如图



系统以a,b命名表,所以这里只需要改成a.id 或者b.id即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐