Tengo un programa hecho en delphi que hace el mantenimiento de una tabla. Hasta ahí todo bien. Si el usuario que se conecta a la base de datos no tiene permisos de select o update o insert lo controlo desde delphi perfectamente. Pero el problema se presenta cuando el usuario tiene permisos, por ejemplo de update sobre la tabla y yo quiero que no me actualice / modifique determinadas columnas de la tabla. Las combinaciones son muchas y lo que no quiero es ponerlas en programa (en codigo) ya que cuando se cree un usuario nuevo, tengo que cambiar programa. En otras bases de datos, por ejemplo postgres, existe el Grant y el revoke a nivel de tabla y tambien a nivel de columna. ¿ Existe algo parecido en Oracle ? ¿ Es otro concepto ?.
Se me ha ocurrido hacerlo a nivel de triggers (before update) pero es una lata tambien. He pensado en las views pero son de lectura y complican el tema. Se les ocurre alguna forma.??? Gracias.