我正在尝试从我的 C# 应用程序为 Firebird 2.5 DB 创建新的数据库用户并收到错误“添加记录错误没有对表用户的插入/写入访问权限”。 我已将 rdb$admin 角色授予用户,使用此角色创建了与数据库的连接,但我仍然收到此错误。 对我来说最奇怪的是,当我尝试使用相同的用户设置和角色 (rdb$admin) 在 IBExpert 中为我的数据库创建新用户时,一切顺利,我没有遇到任何错误。
可能是什么问题?为什么我不能执行更新/插入 USERS 表的 SQL 查询和过程,尽管我有适当的角色,我正在使用建立连接?
我正在使用最新的 FirebirdClient - ADO.NET 数据提供程序。
数据库的连接字符串如下所示:
`"User=developer;Password=*****;Database=C:\DB.fdb;DataSource=*****;Port=*****;Dialect=3;Charset=NONE;Role=rdb$admin;Connection lifetime=15;Pooling=True;MinPoolSize=0;MaxPoolSize=50;Packet Size=8192;ServerType=0;"`
谁能帮我解决这个问题?
最佳答案
我找到了解决方案 - 问题是我忘记向执行过程的用户授予 ADMIN ROLE,因此我无法管理数据库用户。
所以 GRANT ADMIN ROLE 给用户解决了这个问题。
关于c# - 尝试在 C# 中使用 Firebird 客户端创建新的 Firebird 用户时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13067441/