MySQL and MS Access 2007 – Change Data Source on Access Front End

ms-access-2007MySQL

I feel bad asking this, as I am only using an Access front end temporarily, but I have been asked to migrate an access 2007 db to mysql with a php front end. I have moved the data to mysql and am working on the ~400 forms, reports, etc, but want the users to have access to the system while I am developing the new one.

I have little experience with access and although I have been able to connect to the mysql tables, the forms don't seem to update their data sources.

Is there a way to update the entire access front end to the new tables? Or am I missing something really simple and straightforward. I've googled extensively and I've read all the "similar questions" presented on the page where I am typing this and can't an answer which seems to apply.

Thanks for any help or links offered.

Best Answer

You can convert your physical tables in the Access database to the linked tables. The linked table is just this: a link. The actual data is located elsewhere. For this to work you will need to create a connection to the MySQL database supported by Access. Access supports OLEDB and ODBC connections. Download a MySQL OLEDB or ODBC driver, create a DSN (if you chose the ODBC path). Open your Access database and click on the External Data toolbar. Select "Create Link" and then create links to all your data that you have exported to MySQL. The linked tables will be created alongside your existing tables. You can then try deleting the physical tables one-by-one and renaming the matching linked tables, so that the names are the same. You can test the application step-by-steps after each table.

BTW, you could use Access to export data via the driver as well. It would export it together with the indices