当为了防止用户进程修改Oracle数据库中的数据时,可以将数据库的状态置为只读,sql语句如下:startup mountalter database open
当为了防止用户进程修改Oracle数据库中的数据时,可以将数据库的状态置为只读,sql语句如下:
startup mount
alter database open read only;
【注意:alter database *** 命令需要在database为mount状态下才行,如果数据库已启动,先要shutdown】
之后执行如下操作登入scott / tiger 用户
sqlplus /nolog --cmd下执行
conn scott/tiger; --连接scott账户
执行delete操作时会出现如下效果【这里以dept表为例,与执行下面的emp表作用是一样的,给自己说明一下】:
而当修改database状态为 read write时
再次执行上述delete操作,结果如下
【PS: 由于重启了数据库实例,,所以之前的会话结束,需要disconnect之后重新登入scott账户。。
当我delete数据完成之后,不加commit操作应该不会写入数据库的,但是数据缓冲区的数据已经被delete掉,这就是脏数据】
Oracle误删除表数据后的的快速回复功能