oracle 隔离级别、事务怎么开始的以及如何查看数据库采用字符集

时间:2023-01-23 15:40:23
把一下语句全部粘贴至控制台运行后可以查看oracle 隔离级别
declare
trans_id Varchar2(100);
begin
trans_id := dbms_transaction.local_transaction_id( TRUE );
end;
SELECT s.sid, s.serial#,CASE BITAND(t.flag, POWER(2, 28))
WHEN 0 THEN 'READ COMMITTED'
ELSE 'SERIALIZABLE' END AS isolation_level
FROM v$transaction t
JOIN v$session s ON t.addr = s.taddr AND s.sid = sys_context('USERENV', 'SID');
oracle 支持read-committed 以及 SERIALIZABLE 两种隔离模式
其中隔离级别越高数据库并发性越差,oracle默认支持 提交读的隔离模式 也就是read-committed模式 事务是是什么时候开始的:
1:连接到数据库,并执行第一条DML语句
2:前一个事务结束后,又输入了另一条DML语句 以下是DML解释、DDL、DCL解释
DML(data manipulation language): 
它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言  DDL(data definition language): 
DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用  DCL(Data Control Language): 
是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL  查看数据库使用的字符集:
select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';