加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql:允许查询其他不可用的列?

发布时间:2020-12-11 23:47:58 所属栏目:MySql教程 来源:网络整理
导读:我有一个表格,我希望阻止某些用户查看.我理解我应该能够使用视图执行此操作,即具有排除特定列的视图,并拒绝访问该表但允许访问视图(注意,用户无需更新表/视图). 但是我想允许对该字段进行相等查询.如: SELECT * FROM some_table_or_view WHERE hidden_field

我有一个表格,我希望阻止某些用户查看.我理解我应该能够使用视图执行此操作,即具有排除特定列的视图,并拒绝访问该表但允许访问视图(注意,用户无需更新表/视图).

但是我想允许对该字段进行相等查询.如:

SELECT * FROM some_table_or_view WHERE hidden_field = 'some_value';

澄清:

>不应该在一般查询中返回hidden_??field值
>应该可以在hidden_??field值上运行带约束(最好只是相等约束)的查询

这可能吗?

(编辑:如果在除mysql之外的dbms中有解决方案,我也很高兴听到这个).

最佳答案 您可以创建一个存储过程,该过程将返回您允许其返回的所有字段,然后您可以将hidden_??value(过滤条件)作为参数传递.

禁止访问该表的数据库用户,但允许他们调用存储过程.

当然,如果您对表有多种类型的查询,则必须创建多个存储过程.但至少它解决了你的权利问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读