MS Access Import

This topic describes how to import data from a MS Access (2003, 2007+) file.

1. Decide what table to import the data to:

For a new table:
  • On the Database menu, click Import Data. The Data Import wizard opens.

    For an existing table:

  • Right-click a table in Database Explorer and select Import Data on the shortcut menu. The Data Import wizard opens with predefined parameters: a MySQL connection, a database, and a table to import the data to.
  • Alternatively, on the Database menu, click Import Data, and select a required table on the Destination table wizard page.

2. Select MS Access import format and specify a location of Source file. Click Next.

If the Source data is protected with a password, the Open MS Access database dialog box appears where you should enter the password.

Note

Data Import Wizard pages can slightly differ due to the product you have been using.

3. Select a Source table or view. To quickly find them in the list, enter characters of a required name into the Filter field. The list will be filtered to show only those that contain such characters in their names.

You can use a query for partial data import. Click Custom Query and edit the query. Click OK to save the changes.

4. Specify a Target MySQL connection, a database, a schema, and a table to import the data to. If you selected a table in Database Explorer before opening the Data Import wizard, the wizard will open with the predefined connection parameters of the selected table. To create or edit MySQL connections, click the corresponding buttons. Click Next.

5. Specify data formats for the Source data and click Next.

6. Map the Source columns to the Target ones. If you are importing the data into a new table, dbForge Studio will automatically create and map all the columns. If you are importing into an existing table, only columns with the same names will be mapped, the rest should be mapped manually. (If no columns with the same name are found, they are mapped in succession - the 1st column in Source with the 1st column in Target, etc.)

See the Target columns in the top and the Source columns at the bottom of the wizard page. Click Source column fields and select required columns from the drop-down list.

Note

To cancel mapping of all the columns, click Clear Mappings on the toolbar. To restore it, click Fill Mapping.

7. If you are importing to a new table, you can edit the Target column properties by double-clicking them in the top grid. Select the Key check box for a column with a primary Key and click Next.

Note

You should select at least one column with a primary key, otherwise some of import modes on the Modes wizard page will be disabled.

8. Select an import mode to define how dbForge Studio should import the data. Click Next.

9. Select how dbForge Studio should handle errors during import and whether you want to get a log file with details about the import session.

10. Click Import and see the import progress. dbForge Studio will notify you whether the import completed successfully or failed. Click the Show log file button to open the log file.

11. Click Finish to finish the import and close the wizard.

Note

You can save the import settings as a template for future uses. Click the Save Template button on any wizard page to save the selected settings. Next time you should only select a template and specify a location of the Source data - all the settings will be already set. For more information, go to Saving and Using Templates topic.

Note

If you try to import data from Access databases after MySQL server has closed the connection due to inactivity, the Lost connection to MySQL server during query message will appear.

To avoid such problem, view the wait_timeout server variable that defines the time in seconds the server waits for activity on a non-interactive connection before closing it by executing the following query:

show variables like wait_timeout

Then go to the Advanced tab of the Connection Properties dialog box, check the Keep connection alive checkbox and define the Ping timeout property so that its value is smaller than the value of the wait_timeout variable but greater than 0. This will keep the connection alive.

Another workaround is just to increase the value of the ‘wait_timeout’ variable to give a connection more time to be inactive before MySQL server closes it.

This is just the way the functionality works since MySQL server just closes a connection and doesn’t return any error code in such cases. So, in addition to the previously provided workarounds, you should check manually whether column types are set correctly when importing data.