Database Designer Overview.
ER diagrams is a very wise approach to start database development. You almost can't live without them on the initial development stages. But with only ER diagrams and corresponding table definitions you couldn't create a working prototype of your system. Even to use simplest autoincrement field with Interbase/Firebird you need to create a generator to get unique sequence and a trigger or a stored procedure to fill your field with value from generator. At the time of development process you need to synchronize ER diagram with your development database and do not forget to create "infrastructure" objects to make your database working. Most likely you are using different tools for creating ER diagram and to code procedures and triggers. And what if you have made some changes in the development database as a result of testing ? You have to manually put your changes back to ER diagram to keep it synchronized. But it does not seem to be last problem with your project. You need to keep your database object's code somewhere, sometimes you need to search for something in your code and so on and so forth.
Database Designer is a tool for solving all these problems and make your project development much easier, faster and more accurate. First of all Database Designer works as a code repository which provides an effective way to store your database code separately from the development database. It can store any type of database objects plus ER diagrams. Database Designer has a version control system built-in that automatically gives you an ability to keep changes history for any object and to develop your database in a team. And of course your "virtual" database may be deployed to a real world for testing and debugging at any time.
At the initial development stage you could use ER diagrams to start your project. With Database Designer you can create database objects needed to allow your prototype work with your application. Gradually working you could add more and more power to your database using only one integrated environment. No piece of code will be lost with integrated version control system. At any time you could deploy changes to the development database for further testing and debugging. If as a result you have made a lot of changes you could easily import them back to your project and continue development with Database Designer. You could suppose that coding the database virtually may produce a lot of simple syntax errors in the code. But Database Designer has the "Validate Project" feature that will check your code for syntax and some logic errors. So after this check you may be 99% sure that your code is correct and your real database will be updated in a few clicks. Advanced features like Refactoring, code completion and dynamic syntax and errors highliting make your work very effective and bug-free.