4

我正在尝试从我的 C# 应用程序为 Firebird 2.5 DB 创建新的 DB 用户,并收到错误“添加记录错误无权限插入/写入表用户”。我已向用户授予 rdb$admin 角色,使用此角色创建了与 DB 的连接,但我仍然收到此错误。对我来说最奇怪的是,当我尝试使用相同的用户设置和角色(rdb$admin)在 IBExpert 中为我的数据库创建新用户时,它运行良好并且我没有遇到任何错误。

可能是什么问题呢?为什么我不能执行在 USERS 表中更新/插入的 SQL 查询和过程,尽管我有适当的角色,我正在使用建立连接?

我正在使用最新的 FirebirdClient - ADO.NET 数据提供程序。

到 DB 的连接字符串如下所示:

`"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;"`

有人可以帮我解决这个问题吗?

4

1 回答 1

1

我找到了一个解决方案 - 问题是我忘记将 GRANT ADMIN ROLE 授予执行过程的用户,因此我无法管理数据库用户。

所以 GRANT ADMIN ROLE 给用户解决了这个问题。

于 2012-11-12T14:13:11.807 回答