Mysql 5.6.12 bug:在视图定义中使用别名命令时出错1356

发布时间:2019-07-11 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了Mysql 5.6.12 bug:在视图定义中使用别名命令时出错1356脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个非常简单的查询,工作正常:

SELECT *
FROM images i
INNER JOIN v_images_stats s
ON i.id = s.id

通过SELECT *我最终创建了重复的列名,因此我将查询编辑为更具体
并忽略重复的列名称,但MySQL抛出#1356错误:

SELECT i.is as id,s.id as imageid
FROM images i
INNER JOIN v_images_stats s
ON i.id = s.id

#1356 – View ‘events.v_image_stats’ references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them

v_image_stats视图以及它所基于的底层视图和表具有正确的权限,我完全陷入困境.

我正在使用MySQL 5.6和phpmyadmin来创建和管理视图,我也在Phalcon框架内通过PHP PDO访问数据库,但我很确定这是一个MySQL问题,而不是其他任何问题.

任何帮助感激不尽.

我最初发布了SHOW CREATE VIEW的完整输出但是它太冗长了,这是我可以创建的最简单的例子来重新创建问题:

CREATE ALGORITHM=UNDEFINED DEFINER=`events`@`localhost` SQL SECURITY DEFINER VIEW `v_image_stats` AS
(
    select it.*,1 AS `my_alias`
    from `v_image_totals` `it`
    order by `my_alias` asc)
)

如果我在FROM子句中使用表而不是视图,它也会失败.

最佳答案
这似乎是影响MySQL 5.6.10及更高版本的错误(我没有针对MySQL 5.7进行测试).
我已经提出了一个MySQL的错误,所以可以跟踪并希望修复:
http://bugs.mysql.com/bug.php?id=69678

请参阅注释以获得有效的解决方法.

总结

以上是脚本之家为你收集整理的Mysql 5.6.12 bug:在视图定义中使用别名命令时出错1356全部内容,希望文章能够帮你解决Mysql 5.6.12 bug:在视图定义中使用别名命令时出错1356所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ” ,选择关注!
精选程序员所需精品干货内容!

标签:mysql