ORACLEµÄALL_VIEWSÊý¾Ý×Öµätext×Ö¶ÎlongÀàÐÍÎÊÌâ
½ñÌìͬÊÂraiseÒ»¸öСÎÊÌ⣬ÔõôÔÚALL_VIEWSÊý¾Ý×Öµätext×ֶβéÕÒlrf×Ö·û´®£º
etl@DWTEST> select owner,view_name from all_views where instr(text,'lrf') > 0;
select owner,view_name from all_views where instr(text,'lrf') > 0
*
ERROR at line 1:
ORA-00932: inconsistent datatypes: expected NUMBER got LONG
Òòtext×Ö¶ÎΪlongÀàÐÍ£¬´ËÊý¾ÝÀàÐÍÏÞÖÆ½Ï¶à£¬¹Ê¿ÉÒԲο¼ÏÂÃæµÄPL\SQL´úÂë¶Î½â¾ö£º
DECLARE
v_instr_view_ddl NUMBER;
BEGIN
FOR l_ctr IN (SELECT owner,view_name,
sign(dbms_lob.instr(DBMS_METADATA.get_ddl('VIEW',view_name,owner),'lrf')) AS instr_view_ddl
from all_views) LOOP
IF l_ctr.instr_view_ddl = 1 THEN
dbms_output.put_line(l_ctr.owner || '.' || l_ctr.view_name);
END IF;
END LOOP;
END;
ÓÐʲôÎÊÌâ¿ÉÁôÑÔàÞ£¡Good luck to U£¡
Ïà¹ØÎĵµ£º
[root@vmfs sysconfig]# lvdisplay |grep db_d
LV Name /dev/db_v4/db_d_22
LV Name /dev/db_v4 ......
ÔÚÎÒµÄÉÏÒ»¸öÒøÐÐÏîÄ¿ÖУ¬ÎÒ½Óµ½±àдORACLE´æ´¢¹ý³ÌµÄÈÎÎñ£¬ÎÒÊdzÌÐòÔ±£¬ÄÔ´üÀïÖ»ÓÐһЩÈçºÎʹÓÃCALLABLE½Ó¿Úµ÷Óô洢¹ý³ÌµÄ¾Ñ飬һʱ²»ÖªÈçºÎÏÂÊÖ£¬ÎÒ²éÔÄÁËһЩ×ÊÁÏ£¬Í¨¹ýʵ¼ù·¢ÏÖ±àдORACLE´æ´¢¹ý³ÌÊǷdz£²»ÈÝÒ׵Ť×÷£¬¼´Ê¹ÉÏ·ÒԺ󣬵÷ÊÔºÍÑéÖ¤·Ç³£Âé·³¡£¼òµ¥µØ½²£¬Oracle´æ´¢¹ý³Ì¾ÍÊÇ´æ´¢ÔÚOracleÊý¾Ý¿âÖеÄÒ»¸ö³ÌÐò ......
ÒÔdbaµÇ½
1.²é¿´Äĸö±í±»Ëø:
select b.owner,b.object_name,l.session_id,l.locked_mode
from v$locked_object l, dba_objects b
where b.object_id=l.object_id;
2.²é¿´±»Ëø±íµÄsid ºÍserial# :
select t2.username,t2.sid,t2.serial#,t2.logon_time
from v$locked_object t1 ......
¾¡Á¿ÉÙÓÃIN²Ù×÷·û£¬»ù±¾ÉÏËùÓеÄIN²Ù×÷·û¶¼¿ÉÒÔÓÃEXISTS´úÌæ¡£
²»ÓÃNOT IN²Ù×÷·û£¬¿ÉÒÔÓÃNOT EXISTS»òÕßÍâÁ¬½Ó+Ìæ´ú¡£
OracleÔÚÖ´ÐÐIN×Ó²éѯʱ£¬Ê×ÏÈÖ´ÐÐ×Ó²éѯ£¬½«²éѯ½á¹û·ÅÈëÁÙʱ±íÔÙÖ´ÐÐÖ÷²éѯ¡£¶øEXISTÔòÊÇÊ×Ïȼì²éÖ÷²éѯ£¬È»ºóÔËÐÐ×Ó²éѯֱµ½ÕÒµ½µÚÒ»¸öÆ¥ÅäÏî¡£NOT EXISTS±ÈNOT INЧÂÊÉԸߡ£µ«¾ßÌåÔÚÑ¡ÔñIN»òEXIST² ......
OracleÖеÄHash JoinÏé½â
Ò»¡¢ hash join¸ÅÄî
Hashjoin(HJ)ÊÇÒ»ÖÖÓÃÓÚequi-join£¨¶øanti-join¾ÍÊÇʹÓÃNOT INʱµÄjoin£©µÄ¼¼Êõ¡£
ÔÚOracleÖУ¬ËüÊÇ´Ó7.3¿ªÊ¼ÒýÈëµÄ£¬ÒÔ´úÌæsort-mergeºÍnested-loop join·½Ê½£¬
Ìá¸ßЧÂÊ¡£ÔÚCBO£¨hash joinÖ»ÓÐÔÚCBO²Å¿ÉÄܱ»Ê¹Óõ½£©Ä£Ê½Ï£¬ÓÅ»¯Æ÷¼ÆËã´ú ......