全部!
我有一个包含表 User 和 Group 的数据库,它们代表某些应用程序中的实体。但同时存在同名的数据库用户和数据库组。我需要对数据库进行匿名化。更改数据库表很容易,例如更新用户集“Name”=“John”,...其中 Id = 100500
但是如何处理数据库用户和数据库组呢?
我的第一个想法是删除用户并创建一个新用户:
drop user John;
create user njoh identified by 'pswd' login policy "root";
但是在这种方法中失去了对群体的归属感。
Sybase Anywhere 11 中是否有任何类型的数据库用户重命名方法?
此外,我不知道如何更改数据库用户的上次登录时间和评论。 团体也有同样的问题。我没有尝试“删除组”,因为我不知道 Sybase Anywhere 11 中是否有可能。
谁能告诉我真相 - 这个问题有解决办法吗?
最佳答案
不,无法重命名现有用户。您当然可以删除它并创建一个新用户,但正如您所说,所有组成员身份都会丢失,对表和过程等对象授予的权限也会丢失。
更改用户上次登录时间的唯一方法是登录。您可以使用 comment on user is '<string>'
更改对用户的评论。 .
没有drop group
语句 - SQL Anywhere(版本 12 及更早版本)中的组只是具有“组权限”的用户,因此要删除组,您可以使用 revoke connect from <group name>
.
免责声明:我在 SAP 从事 SQL Anywhere 工程工作。
关于sql - 如何在 Sybase Anywhere 11 中更改数据库用户名和数据库组名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24607341/