reverse-engineeringfoxprodbaseeer-model

Reverse Engineer a FoxPro/dBsae database to create the EER model


I'm currently developing a webapp to a costumer and I need to import data from their old application.

As far as I can tell, the database is dBase written with FoxPro. I have the application exe and lots of dbf/dbb/dbi files and I can open the dbf table files thanks to the DBF Commander.

Although I can open each table and see the data, I really could use an EER diagram to understand how the tables connect to each other.

Is there any tool that could reverse engineer the database and draw the EER diagram?

Thank you for time.

Regards, Hugo


Solution

  • A lot depends on whether it's just a bunch of DBF/CDX/FPT files, or whether they belong to a database container (DBC/DCT/DCX extensions). If there's no database container, i.e. 'free tables', they haven't necessarily been created by FoxPro, it could have been any of the xBase languages, like Clipper and so on.

    If they are part of a database container then there may be metadata in it defining rules, triggers, relations.

    Even so, you probably really need a copy of Visual FoxPro (do you have an MSDN sub maybe?). It has a built-in tool called GenDBC which will document the structure of a database if it has a database container.

    There is also the Stonefield Database Toolkit which would give better tools in this regard.

    Or you could use the Upsizing Wizard in Visual FoxPro to get the data into SQL Server, and from there you would have a much better choice of tools.