我想授予用户“更新”权限来更新除一个列 - 在我的情况下是 Id 之外的所有列(更改 Id 可能会使数据、现有 URL 等混乱 - 外键不是解决办法)。在 mysql 中是否可以不列出所有其他列而实现此目的?例如,通过以下方式:
GRANT UPDATE (column_name1, column_name2, ...) ON table_name TO user_name;
grant update on db.table to user;
NOT grant update id on db.table to user;
还有类似的东西吗?
我不想列出所有列的原因:
更加健壮 - 我经常在表中添加一些列,我可能会忘记我必须更新这个规则,
我没有
grant
权限,所以我必须要求我的托管提供商运行每个grant
命令,因此我希望尽量减少这些请求,因为这是一项超标服务(这是他们对我的恩典)。
特别是对于mysql,但我也对通用sql解决方案感兴趣。