mysql - 限制某些用户只能访问他们在公用表中的数据

标签 mysql

我正在构建一个供许多公司使用的 Web 应用程序,我想让他们访问原始 MySQL 数据库 - 但很明显,他们只需要能够访问自己的数据。和只读访问 - 这仅用于备份和分析。

如果所有表都有一个 company_id 列,并且我们为每家公司创建一个 MySQL 用户帐户,您会怎么做?甚至可以允许某人运行任意查询,但对特定列值设置顶级限制吗?

如果没有,关于如何做到这一点还有其他想法吗?我能想到的唯一其他方法是为每个公司创建一个单独的数据库……不过我不确定我不想这样做。

最佳答案

我不确定,但我认为您可以使用 View 来实现。

http://dev.mysql.com/doc/refman/5.0/en/create-view.html

来自维基百科: View 可以限制一个或多个表对外部世界的暴露程度

http://en.wikipedia.org/wiki/View_%28database%29

关于mysql - 限制某些用户只能访问他们在公用表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6283982/

相关文章:

mysql - 用大量测试数据填充数据库表

mysql - 保存历史可编辑数据RDBMS

c# - C# 中的 2 个数据库中的注册用户

MYSQL限制按类别返回数据

mysql - 使用 SQL RAND() 生成受约束的 DISTINCT 元素

mysql - 插入表 Mysql

android - API PHP 查询正确,但向 Android 客户端返回空

php - Join 函数用于将一个表中的字段值与另一表中的字段值进行匹配

mysql error 1069 指定的键太多;最多允许 64 个键

MySQL数据库神秘删除表