Subject RE: [IB-Conversions] Migrating database from MS SQL or PostgreSQL
Author Claudio Valderrama C.
> -----Original Message-----
> From: Andreas Tille [mailto:tillea@...]
> Sent: Jueves 17 de Agosto de 2000 5:28
>
> I'm in the process of migrating a database from MS SQL to a free
> database. I just managed to convert the Tables and data to
> PostgreSQL, but not the stored procedures, thought. They are
> quite different.

If you find a program that converts stored procedures between different
RDBMS systems, please let us know.
:-)


> So I tried to migrate the stuff to InterBase 6 under Linux.
>
> The pg_dump feature of PostgreSQL dumped the table definitions
> and I tried to convert them by hand. Only minor changes are
> required.

Well, are you speaking about MsSql2IB or PostgreSQL2IB or trying to use
PostgreSQL as an intermediate step for the conversion? I don't understand
really what's your data source.


> Unfortunately I had to rename some columns which were
> named "Action" and "Sort". I guess they have a special meaning in
> InterBase because I wasn't able to insert those names.

I don't remember ACTION at this time, but SORT is part of the ANSI-SQL
clause SORT BY.


> My question is if there is a sane way to insert the data
> once the tables are created. I guess I would manage to rename
> the PostgreSQL column definition names equal to the InterBase
> ones to avoid the special names.

Use the UNIX utilities to create INSERT commands based on your columns and
submit that as an script through IB's isql. Alternatively, download the
documents, read about the EXTERNAL TABLE feature in IB and create
fixed-length files for that purpose. If you can use Windows, there's an
utility called IBLoad that takes a fixed length file and dumps it into an
Interbase table, without the need to define an external table.


> Is there a similar mechanism to the
> pg_dump | psql
> thing of PostgreSQL?

I don't have any idea what pg_dump and psql do, so I can't comment. As I
wrote before, if you create a set of INSERT commands from your data, you can
use IB's isql to dump the data.


> Would it be more easy to migrate the data
> (or the whole thing) from MS SQL-Server.

I think that the best way you can do is to extract metadata, then tweak it
and then submit that to IB. I do not trust automatic tools that convert
metadata from one engine to another. If you read the past articles in this
list, I posted a long email on IB v/s MsSql datatypes and some limitations.
There's a beta OLE/DB driver in beta for Interbase at
http://www.lcpi.lipetsk.ru/eng/
If you can use it to make MsSql to export data to IB once the metadata has
been created in IB, it would be a good contribution.
This list doesn't solve all your problems. We can help if the users
interested in conversions spend time in practical solutions, too.
If you want to have an idea of what GDB and BDE are, go to my site (see
signature below) and click on DOCUMENTS and then on GLOSSARY.

C.
---------
Claudio Valderrama C.
Ingeniero en Informática - Consultor independiente
http://members.tripod.com/cvalde