V$sql_bind_capture

I want a trigger that fire when I get an error with the database:
CREATE OR REPLACE TRIGGER toolsx.log_server_errors
AFTER SERVERERROR
ON DATABASE ...
But I want to capture in this trigger all the BIND VALUES using
v$sql_bind_capture.
I believe that exists restrictions on v$sql_bind_capture because is not
possible to obtain the values used in INSERT statements or SET clauses of UPDATE
statements.
How can I get the bind withouth using trace?

Bind capture is disabled when the STATISTICS_LEVEL initialization parameter is set to BASIC. I hope you have ruled out this possibility.

Similar Messages

  • Does oracle 9i has a table like v$sql_bind_capture in Oracle 10g?

    I want to know the bind value in sql command, in 10g I can join v$sql_bind_capture to fine the value. But in 9i, there is no v$sql_bind_capture. Is there any other way I can find the bind value??

    I want to know the bind value in sql command, in 10g I can join v$sql_bind_capture to fine the value. But in 9i, there is no v$sql_bind_capture. Is there any other way I can find the bind value??Not in 9i.
    Sql trace or process dump would be the only way to extract the bind values.
    We have v$sql_bind_data view, but it's session-scope.
    ================================
    Dion Cho - Oracle Performance Storyteller
    http://dioncho.wordpress.com (english)
    http://ukja.tistory.com (korean)
    ================================

  • V$SQL_BIND_CAPTURE doesn't always capture?

    Can anyone tell me why V$SQL_BIND_CAPTURE doesn't always capture my bind variables?

    Bind capture is disabled when the STATISTICS_LEVEL initialization parameter is set to BASIC. I hope you have ruled out this possibility.

  • Get Current SQL in Before delete trigger

    Hi,
    I have created a before delete trigger to track which records are deleted from a table I need to know what statements fires the trigger. can someone please describe how I can retrieve the current SQL.
    using sys_context('userenv','CURRENT_SQL') returns null for CURRENT SQL
    Note:
    For me the easier is to enable auditing and audit delete on the table however at the moment I cant get a downtime from the business to bounce the database to enable auditing.
    CREATE OR REPLACE TRIGGER before_delete BEFORE DELETE
    ON AUDIT_TEST_TAB
    FOR EACH ROW
    DECLARE
    v_username varchar2(50);
    v_stmt varchar2(255);
    v_client_info varchar2(200);
    v_os_user varchar2(50);
    v_machine varchar2(50);
    v_program varchar2(50);
    v_module varchar2(50);
    v_auth_type varchar2(200);
    v_ip_addr varchar2(200);
    v_sql_statement VARCHAR2(4000);
    BEGIN
    SELECT sys_context ('USERENV', 'CURRENT_SQL')
    INTO v_sql_statement
    FROM dual;
    -----------insert into logging table statment ----
    end;

    A few comments.
    Lets assume you run a delete statement that deletes 550 rows from your table. If your trigger is working then the very same statement would be stored 550 times. I think an BEFORE or better an AFTER delete STATEMENT level trigger would be the better choice. Why AFTER? Because if the delete operation fails, for example because of existing child records, then everything is rolled back anyway to the implicit savepoint just before the delete.
    So to store the SQL statement the correct trigger would be an AFTER STATEMENT DELETE trigger.
    Now what to store: You want the sql statement. You could try to find the cursor/currently running SQL. It might be tricky to separate that from the SQLs that you run to find this out.
    It could even be possible to simply save all commands that are in your PGA/Cached cursor area. First find out yur session, then store the SQL_text (first 60 chars) for all the cursors in this session by using v$open_cursor or the first 1000 chars by using v$sql.
    Here are a few views that might be helpful. v$session , v$open_cursor, v$sql, v$sqltext, v$sql_bind_data, v$sql_bind_capture, dba_hist_sqltext

  • How can i see the values of a prepared query

    Somebody knows about a tool that show me the values of a prepared query.
    I tried with the view V$SQL and with the TKPROF, but both show me the same query text and i need to know the parameter's values. Example of a prepared query - I don't know if it is the correct name of that kind of query.
    UPDATE "CL0E01" SET "BLOQUEO"=:1
    WHERE
    "CLAVE"=:2 AND "NUM_REGS"=:3 AND "ULT_CLV"=:4 AND "BLOQUEO"=:5
    Is it a tool that show me the value??
    Thanks for the help.
    Roberto Moreno

    I tried with the view V$SQL_BIND_CAPTURE but i get this error. "ORA-00932: inconsistent datatypes: expected CHAR got -". I executed in the Application Express.
    What could be wrong??
    I put my STATISTICS_LEVEL to ALL but nothing happen. I recieved the same result.
    I executed the view V$STATISTICS_LEVEL, for the Bind Data Capture I have enabled the session and system status, the activation level is TYPICAL.
    Thanks for your help TongucY

  • Reading value of bind variable

    Hi,
    I have been debugging a java application and in the process I wanted to know which values the application passed as bind variables. So i checked v$sql_bind_capture and enabled trace on the session. Unfortunately the datatype was TIMESTAMP, so the view did not show a value and all I got from the trace was a memory dump that is not of much use to me:
    Bind#1
      oacdty=180 mxl=11(11) mxlc=00 mal=00 scl=00 pre=00
      oacflg=03 fl2=1000000 frm=01 csi=873 siz=0 off=24
      kxsbbbfp=fffffd7ffdb6fbd0  bln=11  avl=07  flg=01
      value=
    Dump of memory from 0xFFFFFD7FFDB6FBD0 to 0xFFFFFD7FFDB6FBD7
    FFFFFD7FFDB6FBD0 0D0B6C78 00010101                    [xl......]Is there a function/way to convert this into a timestamp or at least the other way around?

    Just ran this little test:
    SQL> CREATE TABLE t (c1 TIMESTAMP);
    Table created.
    SQL> INSERT INTO t VALUES (TRUNC(SYSTIMESTAMP));
    1 row created.
    SQL> COMMIT;
    Commit complete.
    SQL> SELECT TO_CHAR(c1) FROM t
      2  UNION
      3  SELECT DUMP(c1) FROM t;
    TO_CHAR(C1)
    13-NOV-08 00.00.00.000000
    Typ=180 Len=7: 120,108,11,13,1,1,1Converting those decimals to hex gives you 78,6C,0B,0D,01,01,01 which accounting for reverse byte order is the same as your memory dump. So I think the bind value is 13-NOV-2008 00:00:00:000000.
    Not quite sure how to get from the hex directly back to the date/time, but I'm sure someone knows!
    Actually, Google was quite useful... take 100 off the first two decimal values: 120-100 = 20; 108-100 = 08, to give you the year: 2008. Then the 11 and 13 are the month and day. The remainder are hour + 1, minute + 1, second + 1. So just convert your hex to decimal and you should be able to see the value clearly!
    Edited by: Mike Pargeter on 13-Nov-2008 16:54

  • Different plsql for different Oracle versions

    Hi everyone,
    I am working on a plsql script which may be run on multiple databases. Unfortunately, I have a need to run one query type if the version is 10g, and another if it is 9i. The 10g query is preferable for the type & amount of information it returns, but 9i does not have the same level of support. I wrote the below (dumbed down for posting purposes) to do this:
    spool sqlLog.txt append
    set heading off;
    SET NEWPAGE 0;
    SET SPACE 0;
    SET LINESIZE 32767;
    SET PAGESIZE 0;
    --SET ECHO OFF;
    SET FEEDBACK OFF;
    SET VERIFY OFF;
    SET HEADING OFF;
    SET MARKUP HTML OFF;
    SET TERMOUT OFF;
    SET TRIMOUT ON;
    SET TRIMSPOOL ON;
    SET WRAP OFF ;
    SET LONG 4000;
    SET LONGCHUNKSIZE 500;
    set serverout on;
    set serveroutput on;
    declare     
    ver VARCHAR2(64);
    BEGIN
    select v.version into ver from product_component_version v where product like '%Oracle%';
    ver:=substr(ver,0,2); --remove anything but the highest version number, a.k.a. 9 or 10.
    dbms_output.put_line('ver: '||ver);
    --10g
    IF to_number(ver)>=10
    THEN
         for csr_10g in (SELECT sql_fulltext, a.parsing_schema_name, b.name, b.value_string
                             FROM V$SQL a left outer join v$sql_bind_capture b ON a.SQL_ID = b.SQL_ID)
              loop
                dbms_output.put_line(csr_10g.sql_fulltext||';'|| csr_10g.parsing_schema_name||';'|| csr_10g.name||';'|| csr_10g.value_string);
             end loop;
    ELSE
    --9i
         for csr_9i in (SELECT a.sql_Text, b.Schemaname
                             FROM v$sqlarea a left outer join v$session b ON a.parsing_schema_id=b.schema#
              loop
                dbms_output.put_line(csr_9i.sql_text||';'|| csr_9i.schemaname||';');
             end loop;
    END IF;
    END;
    --run;
    spool off;
    exit;If I run this on a 10g database, it works correctly, spooling the query return to a file.
    If I run this on a 9i database, it will not run, and i get these errors:
                             FROM V$SQL a left outer join v$sql_bind_capture b ON a.SQL_ID = b.SQL_ID --combine to also find the bound variables used
    ERROR at line 13:
    ORA-06550: line 13, column 35:
    PL/SQL: ORA-00942: table or view does not exist
    ORA-06550: line 12, column 17:
    PL/SQL: SQL Statement ignored
    ORA-06550: line 27, column 30:
    PLS-00364: loop index variable 'CSR_10G' use is invalid
    ORA-06550: line 27, column 9:
    PL/SQL: Statement ignored
    Am I doing something wrong with my syntax, or is there another way to go about this?
    Thanks!

    Hi,
    Dynamic SQL, like John suggested, might be the most elegant solution, but here are some others to consider:
    (1) Create dummy objects. Your code guarantees that you'll never get a run-time error trying to query v$sql in Oracle 9, but the problem is that you're getting a compile-time error just by referencing it. So create a v$sql: a dummy table in your own schema, a synonym to the Oracle 10 data dictionary via a database link, anything just so it compiles.
    (2) Create real objects. For example, in your Oracle 9 database, create a view called v$sql, based on v$sqlarea and v$session, that has all the same columns you use in Oracle 10. If you can do this, you won't even need an IF statement in your PL/SQL; the same code that runs against the data dictionary v$sql in Oracle 10 will run against your own schema's v$sql in Oracle 9.
    (3) Isolate the problems. Write two different versions of a package, one for each version, and put all version-dependent code in the package. In most of your code, call the procedure to do the version-dependent stuff. For example, don't open a cursor in your program: instead, call the package to open a cursor.
    (4) Comment Out. Klugy but cute. Write your PL/SQL without IF statements, like this:
    BEGIN
    &v10     for csr_10g in (SELECT sql_fulltext, a.parsing_schema_name, b.name, b.value_string
    &v10                         FROM V$SQL a left outer
    &v9     for csr_9i in (SELECT a.sql_Text, b.Schemaname
    &v9                         FROM v$sqlarea a left outer join v$session b ON a.parsing_schema_id=b.schema#
    &v9                                                                                  join v$sql_bind_capture b ON a.SQL_ID = b.SQL_ID)
              loop
    &v10            dbms_output.put_line(csr_10g.sql_fulltext||';'|| csr_10g.parsing_schema_name||';'|| csr_10g.name||';'|| csr_10g.value_string);
    &v9            dbms_output.put_line(csr_9i.sql_text||';'|| csr_9i.schemaname||';');
             end loop;
    END;Compile your PL/SQL in SQL*Plus.
    Define two substitution variables: v10 and v9.
    In Oracle 10, v10 make " " and make v9 "--".
    In Oracle 9, v10 make "--" and make v9 " ".
    You can do the assignments on the fly with the SQL*Plus "COLUMN ... NEW_VALUE" command.
    In either database, code that only works in the other version will be commented out. Your code will look like hell (good spacing and comments will make it less hard to read), but it will compile and work.
    None of these ideas are mutually exclusive. You might want to do dynamic SQL in some places, and use on dummy objects in others, for example.

  • Parameters in a query

    Hi,
    I'm monitoring a DB with TOAD. I can see a section from middleware application sending the same query again and again, repeatedly.
    SELECT *
      FROM app_log
    WHERE application_name = :v0It indicates some logic problem in an user application. But, in this case, we need to check many applications.
    If I identify the parameters' value, I find the culprit directly.
    How can I obtain the "complete"query, with the specific value for the parameter?
    Many xks,
    Miguel

    Hi Miguel,
    If you are using 10g then it's your lucky day! Query v$sql_bind_capture (join it with v$sqlarea to get the sql_id) to get all the values that the bind variable (:v0) gets.
    If it is not the case (using 9i or below) then I suggest sql_trace on one of the sessions which execute the query.
    Regards,
    Yuri

  • How to describe placeholder/parameters in a SQL statement

    Hi
    Does anybody know how to describe the placeholder/parameters in a statement? I only find the OCI documentation talking about "Describing Select-list Items". But what if I want to retrieve the data type of a placeholder (assuming I don't know beforehand or just want the program to be more flexible)? Doing this by describing schema metadata first (have to find out which schema object to use) and then using OCIDescribeAny() seems not a very good way. Thanks.

    Jonah, and others,
    how would you find out the (hash_value, address) of the statement just described to extract the statement-relevant information from V$SQL_BIND_CAPTURE?
    Via a join with V$SQL and the statement's text?
    Thanks, --DD                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Query to track the holder and waiter info

    Hi All,
    I have framed the following query to get the blocker and holder info.
    I intend to use this query in a auto-generated mail which executes every 15 mins
    I have put an outer join on the holder because the holder DML might have completed its execution (v$sqlarea might not have info about this holder DML) at the time the auto mail configuration fires this query
    I am not a dba and was apprehensive if there is some mistake in the logic of my query.
    I was also expecting to join v$sql_bind_capture using sql_hash_value and sql_address just the way in which I have joined v$sqlarea
    Looking forward to your kind help in vetting the below query
    Select distinct waiting_session,
    dba_waiters.holding_session,
    decode(to_char(session_waiting_info.STATE),'0','waiter is currently waiting','-2','duration of last wait by waiter is unknown','-1','waiter waited for a short time',' waiter waited long time') "waiters waiting state",
    decode(session_waiting_info.WAIT_TIME,0,'waiter waiting') "waiters last wait time",
    decode(to_char(session_holding_info.STATE),'0','holder is currently waiting','-2','duration of last wait by holder is unknown','-1','holder waited for a short time','holder waited long time') "holders waiting state",
    decode(session_holding_info.WAIT_TIME,0,'waiter waiting') "holders last wait time",
    sql_waiting_info.sql_text "query of the waiter",
    sql_holding_info.sql_text "query of the holder",
    session_waiting_info.STATUS "waiting STATUS",
    session_holding_info.STATUS "holding STATUS",
    session_waiting_info.process "waiting process",
    session_waiting_info.PROGRAM "waiting PROGRAM",
    session_holding_info.process "holding process",
    session_holding_info.PROGRAM "holding PROGRAM",
    session_waiting_info.ROW_WAIT_OBJ# "waiting object",
    session_waiting_info.ROW_WAIT_ROW# "waiting row",
    session_holding_info.ROW_WAIT_OBJ# "holding object",
    session_holding_info.ROW_WAIT_ROW# "holding row",
    session_waiting_info.BLOCKING_SESSION_STATUS "waiting session status",
    session_holding_info.BLOCKING_SESSION_STATUS "holding session status",
    session_waiting_info.username "holding os username",
    session_holding_info.username "waiting os username",
    session_waiting_info.MACHINE "waiting MACHINE",
    session_waiting_info.TERMINAL "waiting TERMINAL",
    session_holding_info.MACHINE "holding MACHINE",
    session_holding_info.TERMINAL "holding TERMINAL",
    session_waiting_info.TYPE "waiting TYPE",
    session_holding_info.TYPE "holding TYPE"
    from dba_waiters,
    v$session session_holding_info,
    v$session session_waiting_info,
    v$sqlarea sql_waiting_info,
    v$sqlarea sql_holding_info
    Where dba_waiters.waiting_Session = session_waiting_info.sid
    and dba_waiters.holding_Session = session_holding_info.sid
    And session_waiting_info.sql_hash_value = sql_waiting_info.hash_value
    And session_waiting_info.sql_address = sql_waiting_info.address
    and session_holding_info.sql_hash_value = sql_holding_info.hash_value(+)
    And session_holding_info.sql_address = sql_holding_info.address(+)
    and dba_waiters.mode_held 'None'
    Regards,
    Vishal

    Hi Jonathan,
    I have tried to incorporate your suggestions in the below query. Please let me know about the problems that the below query suffers from
    select session_waiting_info.BLOCKING_SESSION,
         waiter.sid waiting_session,
         waiter.SECONDS_IN_WAIT,
         decode(session_holding_info.STATE,'WAITED SHORT TIME','Holder did not wait and is currently '||session_holding_info.STATUS,'WAITING','Holder is also waiting for the past '||session_holding_info.SECONDS_IN_WAIT ||' seconds','WAITED UNKNOWN TIME','Duration of last wait of holder is unknown','WAITED KNOWN TIME','Duration of last wait by the holder is:'||session_holding_info.STATE || ' and is currently '||session_holding_info.STATUS) "State of holder",
         sql_waiter_info.SQL_TEXT,
         bind_values.NAME,
         bind_values.VALUE_STRING,
         session_waiting_info.STATUS "waiting STATUS",
    session_waiting_info.username "holding os username",
    session_holding_info.username "waiting os username",
    session_waiting_info.STATUS "waiting STATUS",
    session_waiting_info.process "waiting process",
    session_holding_info.process "holding process",
    session_waiting_info.PROGRAM "waiting PROGRAM",
    session_holding_info.PROGRAM "holding PROGRAM",
    session_waiting_info.ROW_WAIT_OBJ# "waiting object",
    session_waiting_info.ROW_WAIT_ROW# "waiting row",
    session_holding_info.ROW_WAIT_OBJ# "holding object",
    session_holding_info.ROW_WAIT_ROW# "holding row",
         session_waiting_info.sql_id,
         session_waiting_info.SQL_CHILD_NUMBER
    from V$SESSION_WAIT waiter,
         V$SESSION session_holding_info,
         V$SESSION session_waiting_info,
         V$SQLSTATS sql_waiter_info,
         V$SQL_BIND_CAPTURE bind_values
    where waiter.sid = session_waiting_info.sid
    and session_waiting_info.BLOCKING_SESSION = session_holding_info.sid
    and session_waiting_info.sql_id = sql_waiter_info.sql_id
    and session_waiting_info.sql_id = bind_values.sql_id(+)
    and session_waiting_info.SQL_CHILD_NUMBER = bind_values.CHILD_NUMBER(+)
    and waiter.WAIT_TIME = 0
    Regrds,
    Vishal

  • Query to get the blocker and holder info

    Hi All,
    I have framed the following query to get the blocker and holder info.I intend to use this query in a auto-generated mail which executes every 15 mins
    I have put an outer join on the holder because the holder query might have been executed at the time the auto mail configuration fires this query
    I am not a dba and was apprehensive is there is some mistake in the logic of my query. I was also expecting to join v$sql_bind_capture using sql_hash_value and sql_address just the way in which I have joined v$sqlarea
    Looking forward to your kind help in vetting the below query
    Select distinct waiting_session,
    dba_waiters.holding_session,
    decode(to_char(session_waiting_info.STATE),'0','waiter is currently waiting','-2','duration of last wait by waiter is unknown','-1','waiter waited for a short time',' waiter waited long time') "waiters waiting state",
    decode(session_waiting_info.WAIT_TIME,0,'waiter waiting') "waiters last wait time",
    decode(to_char(session_holding_info.STATE),'0','holder is currently waiting','-2','duration of last wait by holder is unknown','-1','holder waited for a short time','holder waited long time') "holders waiting state",
    decode(session_holding_info.WAIT_TIME,0,'waiter waiting') "holders last wait time",
    sql_waiting_info.sql_text "query of the waiter",
    sql_holding_info.sql_text "query of the holder",
    session_waiting_info.STATUS "waiting STATUS",
    session_holding_info.STATUS "holding STATUS",
    session_waiting_info.process "waiting process",
    session_waiting_info.PROGRAM "waiting PROGRAM",
    session_holding_info.process "holding process",
    session_holding_info.PROGRAM "holding PROGRAM",
    session_waiting_info.ROW_WAIT_OBJ# "waiting object",
    session_waiting_info.ROW_WAIT_ROW# "waiting row",
    session_holding_info.ROW_WAIT_OBJ# "holding object",
    session_holding_info.ROW_WAIT_ROW# "holding row",
    session_waiting_info.BLOCKING_SESSION_STATUS "waiting session status",
    session_holding_info.BLOCKING_SESSION_STATUS "holding session status",
    session_waiting_info.username "holding os username",
    session_holding_info.username "waiting os username",
    session_waiting_info.MACHINE "waiting MACHINE",
    session_waiting_info.TERMINAL "waiting TERMINAL",
    session_holding_info.MACHINE "holding MACHINE",
    session_holding_info.TERMINAL "holding TERMINAL",
    session_waiting_info.TYPE "waiting TYPE",
    session_holding_info.TYPE "holding TYPE"
    from dba_waiters,
    v$session session_holding_info,
    v$session session_waiting_info,
    v$sqlarea sql_waiting_info,
    v$sqlarea sql_holding_info
    Where dba_waiters.waiting_Session = session_waiting_info.sid
    and dba_waiters.holding_Session = session_holding_info.sid
    And session_waiting_info.sql_hash_value = sql_waiting_info.hash_value
    And session_waiting_info.sql_address = sql_waiting_info.address
    and session_holding_info.sql_hash_value = sql_holding_info.hash_value(+)
    And session_holding_info.sql_address = sql_holding_info.address(+)
    and dba_waiters.mode_held <> 'None'
    Regards,
    Vishal
    Edited by: user11924113 on Feb 18, 2011 2:39 AM

    Query to track the holder and waiter info
    People who reach this place for a similar problem can use the above link to find their answer
    Regards,
    Vishal

  • Variable Bind Data in Oracle 9i

    Hi everyone,
    I am trying to write a query in Oracle 9i which can resolve bound data names and values, but can't seem to find a way to do so. I have a 10g query which works great, but uses v$sql_bind_capture to find the variable names.
    10g query:
    SELECT
         sql_fulltext,
         a.parsing_schema_name,
         b.name,
         b.value_string
    FROM
         V$SQL a LEFT OUTER JOIN
         v$sql_bind_capture b ON
              a.SQL_ID = b.SQL_ID
    WHERE
         ...The problem is that 10g added v$sql_bind_capture to it's functionality, but I cannot find anything in 9i which might serve the same purpose. Is there a table or view which might yield similar information? I cannot use a Trace or FGA for this, so I am looking for other options.
    Thanks!

    What you're tryng to do is not easy. I tried the same thing a couple of years ago on 9i with v$ bind tables (I think V$BIND_METADATA and v$BIND_DATA. I don't have access to a 9i database right now) without being able to get any useful results. The problems I encountered then were that the views I tried to use in 9i only held about 64 rows (?), I had trouble joining the rows anywhere useful, and the rows returned by the view were generally not what I was looking for.
    You can get bind information from trace files if necessary, but that's inconvienint.
    If you figure out how to do this please post it here. I hope someone else can post a more positive response :)

  • Data not getting bind with cursor

    Hi,
    Database: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit
    OS: Windows Server 2003
    Consider following procedure:
    Proc P1() as
    cursor c(in_par varchar2) is select distinct col1, col2 from Table1 where col3 = in_par;
    begin
    for rec_c in c('X') loop
    end loop;
    exception
    end;
    Problem: In most of the execution, the value 'X' passed in cursor c get bind with col3 in where clause and get the desired result. However, in some cases, the value 'X' does not get bind with col3 in where clause. I don't know the steps to re-produce the issue, but it occurs once in a while.
    On querying v$sql_bind_capture, i get 'NULL' in value_string whenever this problem occurs. Otherwise, I get 'X' in v$sql_bind_capture. No exception is thrown anytime.
    What may cause miss of binding constant literal 'X' to cursor?

    Have not seen this error before - PL/SQL not binding SQL statements containing PL/SQL variables, correctly. What at times happen is no bind at all due to name collision. Using the same name for a PL/SQL variable as a SQL column in the SQL statement and scope being such that with name resolution, the SQL column gets preference. This of course does not seem to be the case here.
    What could be happening is that a null variable is being passed as the bind value.
    You can also have a look at the Metalink/support.oracle.com for any notes or bugs on this behaviour. Knee-jerk reaction from my side that this is too a common issue to be an actual PL/SQL bug... (would have reared its head a long time ago)
    In cases like this I like to make sanity checks - reduce the problem to its bare basics with a test case and see if that works. Then gradually increase its complexity and see when it brakes, if at all.

  • Bind Variables in SQL Statement

    can someone tell me if there is a way to find out what the bind variables values are in an sql statement extracted from any of the v$sql or v$sqlarea type tables ?
    sql example:
    update DTree set OriginOwnerID=:A
    where OriginOwnerID=:B and OriginDataID=:C
    Thanks
    Jim

    Hi damorgan
    i see two ot of the three:
    SQL> desc gv$sql_bind_capture
    ERROR:
    ORA-04043: object gv$sql_bind_capture does not exist
    i just trying to see what bind variable values would be associated with the sql when i extract the sql from v$sql and if that is even possible
    Thanks
    Jim

  • How do I know the bind variables in sql_text of V$sql

    I query V$sql ,v$sqlarea,V$SQLTEXT, the sql_text show like select customer_name from customer where id = :B1;
    How can I to get the value of :B1?
    I want to know the entire SQL command, What should I do?

    Satish Kandi wrote:
    Not too sure but check out GV$SQL_BIND_CAPTURE.Satish,
    I remembered reading an anomaly that JL posted about it, I guess it would be helpful for OP to know that there may be parameters which can tweakthe behaviour of this view.
    http://jonathanlewis.wordpress.com/2008/07/24/bind-capture/
    Regards
    Aman....

Maybe you are looking for

  • Problems with multiple Domains open in same web browser?

    Here is the problem. I login to one domain and then open a new webpage (same browser) and login to a 2nd domain. I can then navigate in both domains in each web page. However, when I logout of one, it logs me out of both and which ever one that I log

  • Can logic pro 8 projects be read on logic express 8?

    I've posted this on the logic pro forum but thought should post it here too: So a few weeks ago I went to teach a short one day course in Logic Express 8.... except I've only used Logic Pro 8.....mmmm Anyway, with all my projects carefully prepared (

  • How can I build

    Hi, I have a Debian Server with Tomcat/5.5.9. It works fine. But I think, I didn't install the J2EE correct. I tried to install "j2eesdk-1_4_02_2005Q2-linux.bin" but I only get that error: "./j2eesdk-1_4_02_2005Q2-linux.bin: error while loading share

  • TS3694 My Itunes on my pc was working fine...

    Then I got a message that asked me to update, so I did, but at end of download, I get error message that says: errors occured while installing updates.  If the problem persists, choose Tools>download only and try again installing manually.  I did tha

  • PeopleSoft Learning for Beginners

    Hi Can you provide pointers for peoplesoft learning for beginners in the Internet . Any tutorials which explain PeopleSoft in layman's terms would be helpful