Saludos grupo
tengo una instancia levantada en oracle express, usuario SYS(password
oracle) y en paralelo he abierto una linea de comandos via DOS con el
esquema hr(el mismo password aunq es lo demenos) sucede lo siguiente:
ejecuto la sentencia:
update hr.employees set First_Name=' Lucero' where employee_id= 107
luego
select * from hr.employees;
y puedo ver los cambios y desde la linea de comandos con el usuario
hr ejecuto
select * from Employees where employee_id= 107
tambien puedo visualizar los cambios(ojo que no ejecute commit)
Ahora mi problema viene aqui:
ejecuto desde la linea de comandos con el usuario hr lo siguiente
update employees set First_Name=' Caravantes' where employee_id= 110 y
luego un select * from employees
y puedo ver los cambios ok, pero cuando regreso a mi ventana de
comandos de Express y ejecuto select * from employee where
employee_id= 110 NO VEO LOS CAMBIOS
(sigue con el nombre John) pero si
ejecuto commit en la linea de comandos DOS, recien el usuario SYS
puede visualizarlos, mi pregunta es:
¿Una sentencia DML no se valida automaticamente y ejecuta un commit
implicito?
Sino fuera asi, porque SYS no necesita ejecutar commit(no lo ejecute
como pueden ver arriba) para que otros usuarios vean los cambios que
hace. ¿Esto es configurable? o ya viene asi por defecto
Gracias