very good information
A reader, September 08, 2001 - 7:34 pm UTC
I thank you for the information. I will play with it.
Tom you are the best and the most humble person I have ever met.
thanks again!
Sudhir
See Tom's more recent transaction_id recommendation
Duke Ganote, March 28, 2004 - 9:44 pm UTC
March 29, 2004 - 7:13 am UTC
how could this query not "reliably" provide a transaction_id?
You have a session (so the v$session query works)
and if the trigger fires you have a v$transaction entry for sure.
so, i'd be at a loss to understand the circumstances whereby this won't work. do you have some sort of details for this?
You'd need to use the commitscn (that is what our replication uses) in order to get the proper ORDERING of transactions. (but if you DIY replicate, you've totally missed the point of purchased software.......)
DIY Fat-fingering
Duke Ganote, March 29, 2004 - 1:43 pm UTC
Tom-- I'll have to embarass myself by admitting I'm unable to reproduce the results after a full night's sleep...perhaps I butter-fingered the sys view I created for the query. I'll attribute the erratic results to being too fatigued that night! Apologies. Certainly, frustration led me to scour your site further and find your DBMS_TRANSACTION.LOCAL_TRANSACTION_ID recommendation, which even I couldn't foul up despite fatigue.
As for "why" I was experimenting with DIY replication: it primarily self-educational while reading your "Expert 1-on-1 Oracle" appendix on log miner, but partly (1) because our corporate standard for data transport is a non-Oracle product, (2) the goal is "low latency" or "real time" replication, and (3) we're on 8.1.7.4 for a while yet. Thus, I was exploring means to pushing granular changes to a central data store. I'm a big fan of not re-inventing the wheel; I assume 9i's Change Data Capture (CDC), apparently based on log miner, will provide this functionality, which I was reading about in Oracle magazine's Nov/Dec 2003 issue.
Thank you!
Another option: Use 9*i "Change Data Capture"
Shimon Tourgeman., January 18, 2005 - 7:58 am UTC
For details see: chapter 15 of "Oracle9 i Data Warehousing Guide".
this nice feature is based on a Publish&Subscribe model which will catpture aby DML action against any table that your are subscribed to, and let you access a change table using a supplied DBMS packages.
Worth trying, I think...I like this feature. its revolutional.
Shimon.
A Reader, August 25, 2006 - 8:51 am UTC
I have a table called "stat". Data gets inserted into this table by another procedure. When step_no=7 and task_no=0, status='READY',the insert stops. Can you please explain me if I can capture, the data that is being inserted to stat table, into a collection instead of oracle table and output using dbms_output.put_line?
Thnaks
create table stat
(id number
,step_no number
,task_no number
,status varchar2(10)
,count number
);
insert into stat
values
(1000,5,1,'OK',20);
insert into stat
values
(1000,5,2,'ERROR',50);
insert into stat
values
(1000,5,2,'OK',20);
insert into stat
values
(1000,5,3,'OK',20);
insert into stat
values
(1000,5,4,'OK',20);
insert into stat
values
(1000,7,0,'READY',20);
August 27, 2006 - 8:22 pm UTC
this is a strange one.
can you - yes, we could.
I won't tell you how until you tell me why? what is going to happen to this other data, what will display it? (dbms_output.put_line is pretty much a sqlplus thing unless your CLIENT application calls dbms_output.get_lines and displays it).
need more info, what is the goal here, can you explain this a little better?
A reader, August 29, 2006 - 11:18 pm UTC
Data gets inserted into stat table and it changes.
First it may be in
5,1,'OK',20.
It will then get changed to
5,1,'READY' 15
5,1,'ERROR',5.
I want to capture everything 5,1,'OK',20; 5,1,'READY',15 and 5,1,'ERROR',5.
I was wondering if I can capture into a collection and display it as and when data gets changed.
August 30, 2006 - 8:10 am UTC
this still isn't really making sense here. sorry - I don't think we'll be able to do this one.