Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

ODP.NET में OracleParameter के माध्यम से पारित चर बाध्यकारी के लिए अनुरेखण जानकारी कैसे प्राप्त करें?

विकल्पों में से एक के रूप में, आप मैन्युअल रूप से या स्वचालित रूप से (उदाहरण के लिए किसी उपयोगकर्ता के लिए लॉगऑन ट्रिगर में) सत्र के लिए स्तर 12 या 4 की 10046 ईवेंट सेट करके बाइंड वैरिएबल डंपिंग के साथ एसक्यूएल ट्रेसिंग चालू कर सकते हैं:

alter session set events '10046 trace name context forever, level 12';

उसके बाद user_dump_dest . द्वारा निर्दिष्ट निर्देशिका में ट्रेस फ़ाइल जेनरेट हो जाएगी पैरामीटर।

SQL> show parameter user_dump_dest;

NAME                                 TYPE        VALUE                          
------------------------------------ ----------- ------------------------------ 
user_dump_dest                       string      D:\...\diag\rdbms\cdb\cdb 
                                                 \trace   

यहां एक उदाहरण दिया गया है:

SQL> alter session set events '10046 trace name context forever, level 12';
  2 variable var number;
  3 exec :var := 1234567;     -- our bind variable
  4 select 1 from dual where 1234567 = :var ;

नई जनरेट की गई ट्रेस फ़ाइल में प्रस्तुत अन्य जानकारी के अलावा हमें क्वेरी, बाइंड वेरिएबल और उसके/उनके मूल्यों के बारे में जानकारी मिल सकती है:

आप Oracle 10g और बाद के संस्करण से शुरू करके v$sql_bind_capture क्वेरी भी कर सकते हैं बाइंड वैरिएबल और उनके मूल्यों के बारे में जानकारी प्राप्त करने के लिए गतिशील प्रदर्शन दृश्य:

select t.parsing_user_id
     , t.sql_fulltext         -- text of a query
     , bc.name                -- name of a bind variable
     , bc.value_string        -- value of a bind variable
  from v$sqlarea t
  join v$sql_bind_capture bc
    on (bc.sql_id = t.sql_id)
  join v$session s
    on (s.user# = t.parsing_schema_id)
  where s.username = user
    and bc.name in (':VAR') -- name of a bind variable(s), 
                            -- value(s) of which we want to know

परिणाम:

PARSING_USER_ID   SQL_FULLTEXT                      NAME    VALUE_STRING   
 ------------------------------------------------------------------------ 
           103   select 1 from dual where 1 =:var  :VAR     1234567



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. नेस्टेड टेबल को क्वेरी करना

  2. SQL क्वेरी त्रुटि:"दायां कोष्ठक गुम है"

  3. 12c . में गतिशील नमूनाकरण मुझे मार रहा है

  4. संभावित शून्य मान (ओरेकल 11 जी) वाले फ़ील्ड पर अद्वितीय अनुक्रमणिका कैसे बनाएं?

  5. मैं दो तिथियों के बीच घंटों में अंतर कैसे प्राप्त कर सकता हूं?