4

C#アプリケーションからFirebird 2.5 DBの新しいDBユーザーを作成しようとしていますが、「レコードエラーを追加します。テーブルユーザーへの挿入/書き込みアクセスのアクセス許可がありません」というエラーが表示されます。ユーザーにrdb$adminロールを付与し、このロールを使用してDBへの接続を作成しましたが、それでもこのエラーが発生します。私にとって最も厄介なのは、同じユーザー設定とロール(rdb $ admin)を使用してIBExpertでDBの新しいユーザーを作成しようとすると、問題なく動作し、enyエラーが発生しないことです。

何が問題なのですか?接続の確立を使用している適切な役割を持っているのに、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

解決策を見つけました-問題は、プロシージャを実行したユーザーにADMIN ROLEを付与するのを忘れたため、データベースユーザーを管理できないことでした。

したがって、ユーザーに管理者の役割を付与すると、問題が解決しました。

于 2012-11-12T14:13:11.807 に答える