2014-11-19 2 views
0

Im new в Oracle. У моего db есть два сотрудника и отдел таблиц.Обновление привилегий гранта с ограничениями в Oracle

Employee(Empid, Name, Designation, Date_Joined, Salary, Qualification, Dcode) 
Department (Dcode, Dname, Location) 

Мне нужно предоставить обновление привилегий пользователю C## Amila по зарплате колонки сотрудника. И он не должен быть эля, чтобы обновить зарплаты, которые более чем 50000, и он не должен быть в состоянии вставить значение больше, чем 50000. Я могу предоставить привилегию с

GRANT UPDATE("salary") ON "Employee" TO c##Amila; 

Но есть способ, чтобы добавить выше ограничения этого гранта?

ответ

1

Я никогда не слышал о таких привилегиях в Oracle, но в вашем случае вы можете создать обновляемый вид с опцией Проверила:

create view EmployeeV as select * from Employee 
where salary <= 50000 with check option; 

и предоставить то, что вам нужно с этой точкой зрения:

GRANT UPDATE(salary) ON EmployeeV TO c##Amila; 
GRANT INSERT ON EmployeeV TO c##Amila; 
Смежные вопросы