Program Conversion - Microsoft Access to C#

For some time, we have had a utility for generating a C#/Winforms/SQL Server application from a single sheet Excel spreadsheet.  We have taken on a tasking recently that requires replicating some of that functionality from Access .MDB tables, specifically generating a relational database schema; associated query, insert, and update stored procedures; and corresponding C# (eventually Java) data services.

In doing so, the program has been extended to support many common data types (byte, short, int, currency, and datetime/timestamp).  The Excel import assumes all columns are text strings.  At present, this system creates corresponding table creation scripts for SQL Server and PostGreSQL, and creates query and insert/update stored procedures for SQL Server.  As part of this project, we will generate Insert/Update 'functions' for PostGreSQL.

The code generator produces a fully functioning C#/Winforms/SQL Server program.  The Excel version is 'single form', the corresponding Access version generates one form for each table.  In short, given an Access .MDB, it is possible to have a functioning Windows table maintenance application in less than an hour, although the generated code is 'pure prototype' and would need extensive customization.

This system also generates the code for importing Access rowsets via ODBC and ADODB into corresponding C# collections.  A small amount of customization makes it possible to export those records to an SQL Server or PostGreSQL target.  The main benefit of this is programmatic control and repeatability: one can avoid using the services of an IT technician or DBA to create and populate tables.  The import functionality can trap failures at a record-by-record level.  The user might also wish to import on a 'transaction' basis, such that all the records associated with a customer are imported from their respective tables: any problem is identified at the customer level (for example) rather than merely the record level.

For those that feel like their system is way overdue for an upgrade, please call 210-734-5575 for free initial consultation.

Or, eMail us at