Here's a realtively simple way to implement data versioning in a database, in a way that should be scalable as well. It only needs a couple of support tables and a single function and can apply versioning across multiple data sets concurrently.
Talend has the most open and powerful data management solutions available as a packaged, out-of-box, ready-to-install platform.
Talend's fundamental technology breaks with the market's leading proprietary solutions, associated with the open source model, significantly modifying the rules of the game in the data integration market.
If you need to build complex SQL databases you will find DbDesigner quite a useful tool. It allows you to construct your DB in an intuitive and easy to use environment, where you have a visual representation of the tables and relations contained in your project. You can quickly see the fields in a table or how each table relates to the others. After you are finished, DbDesigner can export the schema of the database into an .sql script, or directly connect to a database backend and build it there.
XML to DDL is a set of python programs to convert an XML representation of a schema into a database and vice versa. It can also examine the differences between two databases and emit the ALTER DDL statements required to bring the database up-to-date. This