可以采用dml触发器,如 CREATE OR REPLACE TRIGGER tr_capt_sql BEFORE DELETE OR INSERT OR UPDATE ON manager.test DECLARE sql_text ora_name_list_t; state_sql capt$sql.sql_text%TYPE; BEGIN FOR i IN 1..ora_sql_txt(sql_text) LOOP state_sql := state_sql || sql_text(i…
--查看是否有除number,char,date,varchar2,clob/blob之外的类型,比如:NVARCHAR2,TIMESTAMP(6),FLOATSELECT DISTINCT a.DATA_TYPE FROM user_tab_cols a; --对于number类型的,还需查询是否有确定的精度,若无,根据实际情况确定精度.SELECT * FROM user_tab_cols a WHERE a.data_type = 'NUMBER' AND a.data_precis…
我们有时候在写Insert语句的时候会遇到values里面的个别列的值需要从别的表中查询获取,这时候SQL语句需要使用向表中插入多条数据的写法: INSERT INTO LoginRecordInfoes select( select Email from Users WHERE UserName='dddd'),'2017-08-03 13:47:25.977','::1','uuuuu' UNION SELECT ','test' 其中,select Email from Users WH…
◆Oracle查询用户表空间:select * from user_all_tables ◆Oracle查询所有函数和储存过程:select * from user_source ◆Oracle查询所有用户:select * from all_users.select * from dba_users ◆Oracle查看当前用户连接:select * from v$Session ◆Oracle查看当前用户权限:select * from session_privs ◆Oracle查看用户表空间…
很多刚入门的DBA在捕获阻塞得时候,会问这么一个问题“为什么这个SELECT语句被那个SELECT语句阻塞了,难道不是共享锁么?” 让我们来做个小测试,首先准备一些测试数据: --====================================== --准备测试数据 SELECT ROW_NUMBER()OVER(ORDER BY object_id) AS RID, name AS C1 INTO TB003 FROM sys.all_columns GO CREATE UNIQUE…