Follow

Autodetection of potential migration issues. Errors and Warnings

 

All possible errors that you can face during the conversion are automatically detected and special explicative messages are displayed below the destination tree.

 - Database objects which can provoke an error are marked with a red cross.

  - Warnings are noted with a yellow exclamation.

In case some tables, fields or indexes are indicated as problematic follow the instructions given below.

Firstly, expand the tree-view and click on red marked item(s) to solve the problem.

NOTE: to save your time you can double-click on the red marked objects and you'll see the error message origin.

Please, press the appropriate message to learn more about the problem. After you eliminate an error all database objects that were previously marked red / yellow turn into non-problematic.

Database cannot be converted correctly. Click on red marked tables for more details.

This message implies that the selected database cannot be converted properly by some reasons.

Example: As you can see on the picture below Destination Database is marked red. It means that some of the database objects can cause conversion problems.

Double click the red marked tables, fields or indexes to find where the problem is.

You can see that index named "Order Details_PRIMARY" provokes the following error message: "Error! Not all fields required by index are selected for conversion".

Table cannot be converted correctly. Click on red marked fields for more details.

This message means that the selected table cannot be converted properly by some reasons.

Example: As you can see "Categories" table is marked red as some fields and indexes can cause migration problems.

Please, expand the tree, then double click on appeared Fields.

And here we see that "Category[Name]" Field throws the following error: "Error! Garbage symbols in the name are found. Check the name". We can resolve the case in two ways:

1. You can rename the table manually in "Name" edit box (located in the New field info group in the right panel). Here you have to remove all unwanted symbols from the field name. In our example we should delete "[]" symbols.

After deleting the garbage symbols from "Category_Name_" Field that was previously marked red won't cause any problems.

2. You can automatically replace all garbage symbols. Click the database name in the left panel (in our example we click DestinationBase). Database Options appear in the right panel where you enter all special symbols, for example []"'"\:/*<> -+" in the field "Garbage symbols to replace/remove".

After pressing "Replace all" button you will get a message where you will be offered to choose a correct name. You can confirm the offered name by clicking on "OK" button. If you click "Apply All" all the unwanted symbols will be automatically replaced with the symbol entered in the "Replace with" field. In case you click "Cancel" the name will stay untouched.

Finally, the database objects that have been earlier marked in red now won't cause any problems.

Table cannot be converted correctly. Click on red marked indexes for more details.

Example: As you can see Order Details table is marked red. It means that some fields or indexes can cause migration issues.

Click twice on Order Details table, and then on Indexes twice.

Now you can see that indexes named "Order Details_PRIMARY", "Order Details_Order Details_OrderID" provoke the following message: "Error! Not all fields required by index are selected for conversion".

Table cannot be converted correctly. Click on red marked foreign keys for more details.

Example: As you can see "Orders" table is marked red. It means that some fields or foreign keys can cause conversion problems.

Unroll the "Orders" table, and then appeared Foreign Keys.

Now we see that foreign key named "Orders_CustomerID_fkey" provokes the following message: "Error! Not all fields required by foreign key are selected for conversion."

Table can not be converted correctly. Click on red marked taken up items.

Example: In our example "Categories" table is marked red. Let's see what invokes conversion problems.

Expand this table, and then Fields and Indexes to find where the problem is. In our example Fields contain an error as well as Indexes.

 

  1. Here we see "Category/Name" Field causes the following error: "Error! Garbage symbols in the name are found. Check the name". We can resolve the case in two ways:
  • A. You can rename the table manually in "Name" edit box (located in the New field info group in the right panel). Here you need to remove all unwanted symbols from the field name. In our example we should delete "/" symbol.

After deleting the garbage symbols "Category_Name" Field that was marked red no longer causes any problems.

  • B. You can automatically replace all garbage symbols. Click at the database name in the left panel (in our example we click DestinationBase). Database Options appear in the right panel where you enter all special symbols, for example "'"\:/*<> -+" in the field "Garbage symbols to replace/remove".

After pressing "Replace all" button you will get a message where you will be offered to choose a correct name. You can confirm the offered name by clicking on "OK" button. If you click "Apply All" all the unwanted symbols will be automatically replaced with the symbol entered in the "Replace with" field. In case you click "Cancel" the name will stay untouched.

After pressing "OK" or "Apply All" buttons all before marked red items won't cause any problems.

  1. Now let's correct the error contained in Indexes. As we can see PrimaryKey and PrimaryKey1 provoke the same error: "Error! Not all fields required by index are selected for conversion".

Error! Garbage symbols in the name are found. Check the name.

This message implies that the selected table cannot be converted properly because some garbage symbols are found in the table name. There are some special symbols which are required not to be used as they are the symbols reserved for MySQL internal purposes. So you need to rename the table.

We can resolve the case in two ways:

  1. You can rename the table manually in "Destination name" edit box (located in the Table options group in the right panel). You need to delete unwanted symbols or replace them with "_".

    2. You can automatically replace all garbage symbols. Click at the database name in the left panel (in our example we click DestinationBase). Database Options appear in the right panel where you enter all special symbols, for example "'"\:/*<> -+" in the field "Garbage symbols to replace/remove".

After pressing "Replace all" button you will get a message where you will be offered to choose a correct name. You can confirm the offered name by clicking on "OK" button. If you click "Apply All" all the unwanted symbols will be automatically replaced with the symbol entered in the "Replace with" field. In case you click "Cancel" the name will stay untouched.

At the end, database objects, which have been previously marked in red will not cause any problems.

Error! Not all fields required by index are selected for conversion.

Indexes can be converted only with corresponding fields. This error message implies that fields required for particular indexes are unchecked. Look at the right panel where Index options are shown. Check necessary fields if you want them to be converted with the indexes.

Example: Here "Order Details_pKey" index has such error. Look at "Fields" list control. The fields named "OrderID" and "ProductID" are required for the index. Now make sure that these fields are checked for conversion. As we can see "OrderID" field is unchecked.

If you check the checkbox in front of "OrderID" field the error message will be moved away.

Error! Not all fields required by foreign key are selected for conversion.

Foreign keys can be converted only with corresponding fields. This error message implies that fields required for particular foreign keys are unchecked. Look at the right panel where Foreign Keys options are shown. Check necessary fields if you want them to be converted with the foreign keys.

Example: Clicking at "Order Details_ProductID_fkey" primary key you get such message. Look at "Fields" list control in the right panel. Here you can see the path to the fields that are required for this foreign key but they are not selected. We can see that we need Order Details.ProductID and Products.ProductID to be selected for conversion.

Now make sure that both fields are checked for conversion. As we can see "ProductID" field in Products table is unchecked.

If you check the checkbox in front of "ProductID" field the error message will be moved away.

Error! Cyclic reference detected.

This error message implies that cyclic reference is detected in database foreign keys structure. Cyclically ordered relations can become an entry point for such error occurring.

Example: Foreign keys defined for particular tables can be arranged cyclically. This fact provokes the error appearing in case you attempt to convert such a database with converter. Here you can see that all foreign key dependencies participated in cyclic chain are marked red.

To eliminate this error it will be enough to delete one foreign key reference to avoid getting the error about cycle. Thus the cyclic chain of links can be broken. In other words you should unselect it and make it unavailable for conversion.

Error! The first symbol of field name or index must be a letter or underscore.

The index and field names must start with a letter or underscore according to the FoxPro naming conventions.

Example: Clicking at "Fields" index you get such message. Look at "New field info" list control and change field name in "Name" edit box.

If you rename the field name with a letter or underscore the error message will be moved away.

Error! Some fields, indexes or foreign keys have too long name.

This message implies that there are some FoxPro symbol limits. Max length of field, index or table names is only 10 symbols. So you need to rename the table.

Example: Clicking at "Fields" index you see such message. Look at "New field info" list control and change field name in "Name" edit box.

If you restrict the field name up to 10 symbols the error message will be moved away.

Error! Data cannot be added or updated: a foreign key constraint fails.

This message implies that data, when you convert to MySQL database (DBConvert for FoxPro and MySQL / DBSync for FoxPro and MySQL), cannot be added properly because some foreign keys can cause conversion problems. The same situation can occur when one table related on itself.

Example: As you can see "EMPLOYEESREPORTSTO" foreign key is marked red. It means that this record is able to have a reference to not existing record.

If you want to avoid this error you need to convert database without this foreign key. After conversion process, you can add this foreign key to database.

Warning! Autoincrement field should be a Primary Key.

This message implies that Primary Key is needed for this field.

Example: As we can see "CategoryID" field provokes this warning.

 

 Look at the Indexes. Check Primary Key index if there is such an index in your table. This will resolve the problem.

 

 In case there is no Primary Key for this field we recommend you to create the index in your source database to make the conversion 100% successful. In case you won't pay attention to this warning and run the conversion without creating Primary Key, Autoincrement won't be set to this field.

Warning! Field name or index matches FoxPro reserved word. It may invoke error occurring.

This message implies that field name or index is equal to FoxPro reserved word. So probably you will face problems during the conversion.

In case you don't want to have any conversion problem, it is desirable to rename field or index name.

Database will be converted with small defects. Click yellow marked tables for more details.

This message implies that conversion of the selected database can face some troubles. Click twice on yellow marked items to solve the problem.

Example: As you can see table "Categories" is marked yellow. It means that some tables, fields or indexes can cause conversion problems.

Please, double click the yellow marked tables and fields to find the cause for this warning.

Now can see that the field named "CategoryID" provokes the following message: "Warning! Autoincrement field should be a Primary Key".

Table will be converted with small defects. Click yellow marked fields for more details.

This message implies that conversion of the selected table can face some troubles. Click twice on yellow marked items to solve the problem.

Example: As you can see Categories table is marked yellow. It means that some fields can cause conversion problems.

Double-click the yellow marked fields to find the cause for this warning.

Now can see that the field named "CategoryID" gives the following message: "Warning! Autoincrement field should be a Primary Key".

Filter Errors.

1. "Wrong number format"

Check the syntax of the NUMBER parameter. Non-numeric value on a place of numeric.

2. "Wrong date/time format"

Make sure the DATE and TIME formats correspond to the Date Format and Time Format in your database.

3."Wrong boolean format (1 or 0 required)"

The value for BOOLEAN format should be either 1 or 0. Any other values are unacceptable.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments

Powered by Zendesk