sql >> Base de Datos >  >> RDS >> Oracle

¿Por qué no puedo crear disparadores en objetos propiedad de SYS?

No debería crear ninguna objetos en el esquema SYS. Ese usuario es parte del sistema de administración de la base de datos de Oracle y es probable que cambiar su esquema dañe su base de datos. Ciertamente, podría invalidar su contrato de soporte de Oracle (si tiene uno). De la documentación:

"La cuenta administrativa SYS se crea automáticamente cuando se crea una base de datos. Esta cuenta puede realizar todas las funciones administrativas de la base de datos. El esquema SYS almacena las tablas y vistas base para el diccionario de datos. Estas tablas y vistas base son fundamentales para el funcionamiento de Oracle Database. Las tablas en el Los esquemas SYS son manipulados únicamente por la base de datos y nunca deben ser modificados por ningún usuario".

Oh, en caso de que te lo estés preguntando, lo mismo se aplica a SYSTEM también.

Los disparadores son particularmente propensos al abuso y son una fuente importante de problemas de escalado. Es por eso que Oracle nos prohíbe crear disparadores en SYS, porque hacerlo podría corromper o al menos afectar el rendimiento del diccionario de datos.

Por supuesto que eso no es lo que está pasando aquí. Ha creado sus propias tablas en SYS. Pues déjalos. Ahora. Utilice SYS para crear su propio usuario, GHAZAL o el nombre que le convenga, y concédale los privilegios necesarios:CREAR SESIÓN, CREAR TABLA, CREAR DISPARADOR, etc. Luego conéctese como ese nuevo usuario para crear sus tablas y otros objetos de esquema.