MySQL 更改 View 安全性

标签 mysql sql security view

我使用用户 root@'%' 创建了一个 View ,并将 SQL SECURITY 保留为默认 DEFINER。现在,出于安全原因我删除了该用户,其他人都无法访问该 View ...

ALTER SQL SECURITY INVOKER VIEW view_x;

给出错误“您的 SQL 语法有错误;请检查手册...第 1 行 '' 附近”

这是 MySQL 网站上的文档

改变 [算法={未定义|合并|诱人}] [定义者={用户|当前用户 }] [SQL 安全性 { 定义器 |祈求者}] VIEW View 名称 [(列列表)] AS select_语句 [与[级联|本地]检查选项]

我是否遗漏了一些明显的东西?

最佳答案

您遗漏了强制性的“AS select_statement”部分。您必须为 View 指定 sql。

ALTER SQL SECURITY INVOKER VIEW view_x AS ... insert your sql here ...;

关于MySQL 更改 View 安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18769814/

相关文章:

php - setInterval 会使客户端 PC 过载吗?

php - 从 PHP 读取 .ini 文件时如何确保其安全

security - 从 Firefox 执行批处理脚本

mysql - 需要在两个表之间进行 SQL 连接并需要比较多个不同的行

php - MySQL 双阶

mysql - 如何在scala中模拟MySQL SUBSTRING_INDEX()?

mysql - Doctrine - 使用 MIN 运算符时与 SQL 的结果不同

SQL多行合二为一

sql - 仅当子表中的多行匹配时才从父表中选择行

java - 上传多个大文件时允许注销