views:

207

answers:

1

I am integrating a system with 2 other applications, 1 using a Firebird database whilst the other BIS (using ADO). My delphi application uses Firebird. I need to read data from my database, insert it into both the BIS database and the other application firebird database. I have created seperate data modules for each. Sending data to the ADO works fine, but when writing to the other Firebird DB (my db still open) I get strange errors. I have managed to isolate the problem to the second firebird DB. Small data writes seems fine.

The data structures are completly different, so un able to use a synch tool.

is there a way to overcome this by using multi threading or seperate memory space each Firebird instance uses?

A: 

I don't use DataModules, but routinely access (both read/write) multiple databases all the time using multiple TAdoConnection/TAdoQuery for each database.

  1. For each database create a TAdoConnection. I have never accessed Firebird, but from what I can gather it is just like Interbase; so you should be able to access it with TAdoConnection.
  2. Create a corresponding TAdoQuery query for each database.
  3. Open each query separately.
  4. After you are done make sure to free everything.

From the sounds of it, seems like you might be using a single database connection to one Firebird database (most likely "Yours").

Another consideration: Check that a query to the 2nd database yields the intended results and fields.

M Schenkel