Relational eXcel is a comprehensive data transformation and data loading tool to help you work with your Excel, Access, CSV, or text based data and load it directly into your database server, or create SQL bulk insert script files.
Although Relational eXcel can be used to directly import a table from a workbook into a database, what sets it apart from the competition is that it can also transform that data on the fly and even add columns you didn't have in the original workbook. If you use Microsoft Excel, flat files, or Access as a front-end to some of the data stored in your database, but your schemas do not match exactly - for example, if the data in your Excel file is denormalized, whereas in your relational database it is normalized with foreign-key references and so on - then Relational eXcel is the perfect tool for the job.
Traditionally, when data needs to be read into a database but the database schemas do not specifically match that of your input data, a two-step process is used. Data is first read into temporary tables in the database, and then transformed using custom SQL script files. Writing these script files is a resource-intensive and error-prone operation. Relational eXcel solves this problem by transforming the input eXcel data on the fly before writing it to the database, thus eliminating the need for intermediate tables and custom SQL transformation scripts.
Relational eXcel is built for performance. Provided you have decent hardware, rows can be read in at around 3000 rows/second and written to SQL files or the database at around 10,000 rows/second. Foreign-key type columns are heavily optimized with values looked up using dinamically generated hash tables. The Xlsx/CSV/Access DB reader module was written from scratch for speed. A workbook with several worksheets containing hundreds of thousands of rows can be read in under 10 seconds.
To illustrate the power and flexibility of Relational eXcel, consider this example. You have two tables on a worksheet, one for employees, and one for branches of your business.
You wish to import this data into your relational database so that your end result is the following.
The above transformation could be done on-the-fly by Relational eXcel. In particular, the following features would be put to use: