Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建MYSQL视图的疑难解答_Mysql - Fatal编程技术网

创建MYSQL视图的疑难解答

创建MYSQL视图的疑难解答,mysql,Mysql,我是mysql的新手,所以也许对你们中的一些人来说,我的问题看起来很幼稚 我使用此查询在数据库中创建表(如下所示): 我还有这个查询来创建视图: CREATE ALGORITHM=UNDEFINED DEFINER=`geo`@`%` SQL SECURITY DEFINER VIEW `hydrants_log_maxtime` AS select `hydrants log`.`ID` AS `id`,`hydrants log`.`TRIG` AS `trig`,`hydrants lo

我是mysql的新手,所以也许对你们中的一些人来说,我的问题看起来很幼稚

我使用此查询在数据库中创建表(如下所示):

我还有这个查询来创建视图:

CREATE ALGORITHM=UNDEFINED DEFINER=`geo`@`%` SQL SECURITY DEFINER VIEW `hydrants_log_maxtime` 
AS select `hydrants log`.`ID` AS `id`,`hydrants log`.`TRIG` AS `trig`,`hydrants log`.`VALUE` AS `value`,max(`hydrants log`.`TIME`) AS `time` from `hydrants log` group by `hydrants log`.`ID`;
当我尝试在SQLFIDLE中创建它时。我得到这个错误:

Access denied; you need (at least one of) the SUPER privilege(s) for this operation.
我想这一行的问题是:

UNDEFINED DEFINER=`geo`@`%` SQL SECURITY DEFINER VIEW `hydrants_log_maxtime` 

因此,我的问题是如何更改视图查询以创建上面的视图

我认为,问题在于视图的
DEFINER=`geo`@`%`
参数。sqlfiddle的MySQL数据库中没有这样的用户,您不能将其指定为视图定义者。所有其他参数必须工作。

另外,像
SQL安全定义器
这样的限制在sqlfiddle中也不起作用,因为您只有一个用户,无法添加新用户或编辑现有用户。使用此参数的查询将正常工作,但它将不被使用。

Andrew,我是否只需要从查询中删除此DEFINER=geo@%`?
UNDEFINED DEFINER=`geo`@`%` SQL SECURITY DEFINER VIEW `hydrants_log_maxtime`