errorlogging in 11g
This is a very neat feature in 11g.
I have a script called foo.sql
create table t(x number primary key);
insert into t(x) values (1);
insert into t(x) values (2);
insert into t(x) values (2);
insert into t(x) values (3);
commit;
It is eyes-popping that this script will return an error, but which one?
Let’s errorlog !
SQL>set errorl on
SQL> @foo
Table created.
1 row created.
1 row created.
insert into t(x) values (2)
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.SYS_C004200) violated
1 row created.
Commit complete.
SQL> set errorl off
SQL> select timestamp,script,statement,message from sperrorlog;
TIMESTAMP SCRIPT STATEMENT
---------- ------- ---------------------------
MESSAGE
---------------------------------------------------------
11:18:56 foo.sql insert into t(x) values (2)
ORA-00001: unique constraint (SCOTT.SYS_C004200) violated
There is also a huge bonus
You can use it with 9i and 10g databases too! Only the client must be 11g. To download the 11g client only, go to Oracle E-Delivery Website
Even small, this is one of my favorite new features!
August 27th, 2007 at 13:21
Very nice tip Laurent!
Dimitri
August 27th, 2007 at 13:35
Good one Laurent. Will test it soooooon.
August 27th, 2007 at 14:51
That’s a real nice tip!
Thanks
Patrick
August 27th, 2007 at 19:27
Is there 11g Client available for Windows ?
August 27th, 2007 at 21:42
not yet
August 28th, 2007 at 09:32
Does this also work for inserts as select from other table?
August 28th, 2007 at 09:59
this work for every sql command. insert/delete/alter/drop whatever…
August 31st, 2007 at 18:02
[…] Continuing on with the Oracle 11g theme, Laurent Schneider blogs about an outstanding feature in Oracle 11g that logs the errors produced by scripts that you have run. Be sure to check it out, even if you think your code is perfect. […]
October 23rd, 2007 at 02:42
[…] With the Windows client, I will be able to use cool new features like errorlogging. […]
August 13th, 2008 at 14:43
Oracle 11g instantclient - basiclite can find here http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html