Помогите, пожалуйста, разобраться с такой проблемой:
я создал нового пользователя "admin".
Затем я в базе данных создал роль "ADMINISTRATOR" и назначил ей привилегию:
Код: Выделить всё
grant ALL on "ABONENT" to "ADMINISTRATOR" WITH GRANT OPTION;
Код: Выделить всё
Datamodule1.IBDatabase1.Connected := false;
DataModule1.IBDatabase1.Params.Clear;
Datamodule1.IBDatabase1.Params.Add('lc_ctype=WIN1251');
Datamodule1.IBDatabase1.Params.Add('user_name=' + EdLogin.Text); // логин
Datamodule1.IBDatabase1.Params.Add('password=' + EdPassword.Text); // пароль
if EdLogin.Text = 'admin' then
Datamodule1.IBDatabase1.Params.Add('sql_role_name=administrator');
Datamodule1.IBDatabase1.Connected := true;
no permission for read/select access to table ABONENT
тип ошибки: EIBInterBaseRoleError.
Помогите пожалуйста разобраться, почему нельзя ничего делать с этой таблицей?
И как ещё можно созданным пользователям (которые хранятся в файле isc4.gdb), задавать привилегии на
определённые таблицы в БД?
Заранее благодарю!