很多时候,我们都会用sa新建数据库和表,然后新建用户(这里就叫user1吧),让新建用户去管理新建的库。在sybase里,sa可以授权user1去新建表,但是user1是不能修改sa创建的表的,就是dbo开头的表。user1只能修改自己创建的表。如果user1修改dbo的表的时候,就会出现错误提示。
要修改表结构,只能有两种方法,1、把user1的服务角色里加入sa_role的角色。2、将owner设置成user1,命令是sp_changedbowner 'user1' ture。这样的话,sa可以操作这个数据库,user1也可以建表和修改表。正常情况下,我们都会选用第二种方法,因为一个数据库服务里一般有多个数据库,某个系统管理员只是负责其中一个数据库,sa的角色对于开发公司的人来说太高了,如果不是数据库服务管理员,禁止赋予sybase服务角色的权限的。
本文介绍了在Sybase数据库中如何通过调整用户角色和服务角色来实现不同用户的表管理权限分配。详细讨论了普通用户(如user1)在新建表及修改表方面的限制,并提供了两种解决方案:一是将用户添加到sa_role角色;二是改变数据库所有者为该用户。
2896

被折叠的 条评论
为什么被折叠?



