Solved

Interbase *.db tables to oracle

Posted on 2001-07-12
7
240 Views
Last Modified: 2012-05-04
Does anybody how to convert from *.db tables to oracle tables? Do I have to create the tables first and then load them with data?
I really want to do DDL and DML together if possible.

Thank you.
0
Comment
Question by:sigalos
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 13

Expert Comment

by:Epsylon
ID: 6278517
You can use the DataPump tool that comes with Delphi...
0
 
LVL 3

Accepted Solution

by:
nnbbb09 earned 25 total points
ID: 6278530
Sigalos,

I think *.db files are Paradox tables not Interbase. I'm certainly no Oracle expert but as a general approach you could load the *.db file into a TTable component and then use the Fields property to build up a Create Table script, adding in the column definitions based on the DataType of each field in the Paradox table.  eg :

  for i:=0 to table1.fieldcount-1 do
  begin
    Case table1.fields[i].DataType of
      ftString : {add your code to the script}
      ftInteger : {add your code to the script}
      ftDate : {add your code to the script}

      .
      .
      etc..
      .
      .

    end;

  end;


Once you've built up a create table script execute and commit it.

Then you can loop through the records in the dataset building up an INSERT statement for each one and firing that off to the server.

Jo
0
 
LVL 27

Assisted Solution

by:kretzschmar
kretzschmar earned 25 total points
ID: 6278758
the datapump tool would be the easiest method, but comes only with delphi c/s i guess

to do it by hand,
you could simply connect ttables to the databases (databasename),
on oracle-side the table must be allways closed,
now iterate through the tables on the not oracle-side,
set on both the ttables the tablename
open the not oracle-side ttable
use the tbatchmove-method like
tbl_notOracleSide.BatchMove(tbl_OracleSide,batCopy);

no ddl/dml is needed

well, not tested by myself, but could work

meikl
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:sigalos
ID: 6281496
I don't have the datapump tool, because I am using the Enterprise Edition.
As of the second answer, I had that in mind too and it looks like the best approach for now.
As of the last one, it looks like easier, but I don't have a test platform yet until the next two months to test it myself.
Does the ADO component provide any easier way to do it?
0
 
LVL 13

Assisted Solution

by:Epsylon
Epsylon earned 25 total points
ID: 6281574
> I don't have the datapump tool, because I am using the Enterprise Edition.

Then you must have the tool.....
0
 
LVL 26

Expert Comment

by:Russell Libby
ID: 8702942
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

Split points between Epsylon, nnbbb09 and kretzschmar

Please leave any comments here within the next seven days.
 
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!
 
Thank you,
Russell

EE Cleanup Volunteer
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
In my programming career I have only very rarely run into situations where operator overloading would be of any use in my work.  Normally those situations involved math with either overly large numbers (hundreds of thousands of digits or accuracy re…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
This video shows how to use Hyena, from SystemTools Software, to update 100 user accounts from an external text file. View in 1080p for best video quality.

732 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question