我目前正在尝试通过QODBC将我的QB数据迁移到我的MySQL服务器,但是遇到以下错误:

Starting...
Connect to source DBMS...
- Connecting to source...
Connecting to ...
Opening ODBC connection to DSN=QuickBooks Data 64-Bit QRemote...
Connected
Connect to source DBMS done
Check target DBMS connection...
- Connecting to target...
Check target DBMS connection done
Retrieve schema list from source....
- Checking connection...
Connection to  apparently lost, reconnecting...
Connecting to ...
Opening ODBC connection to DSN=QuickBooks Data 64-Bit QRemote...
Connected
- Fetching catalog names...
Traceback (most recent call last):
  File "C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules\db_sql92_re_grt.py", line 368, in getCatalogNames
    return Sql92ReverseEngineering.getCatalogNames(connection)
  File "C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules\db_sql92_re_grt.py", line 43, in getCatalogNames
    return sorted(list(set(row[0] for row in cls.execute_query(connection, 'SELECT TABLE_CATALOG FROM INFORMATION_SCHEMA.TABLES'))) )
  File "C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules\db_generic_re_grt.py", line 80, in execute_query
    return cls.get_connection(connection_object).cursor().execute(query, *args, **kwargs)
pyodbc.ProgrammingError: ('42000', '[42000] [QODBC] Unexpected extra token: . (11017) (SQLExecDirectW)')

Traceback (most recent call last):
  File "C:\Program Files\MySQL\MySQL Workbench 8.0 CE\workbench\wizard_progress_page_widget.py", line 197, in thread_work
    self.func()
  File "C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules\migration_source_selection.py", line 469, in task_fetch_schemata
    self.main.plan.migrationSource.doFetchSchemaNames(only_these_catalogs)
  File "C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules\migration.py", line 245, in doFetchSchemaNames
    catalog_names = self.getCatalogNames()
  File "C:\Program Files\MySQL\MySQL Workbench 8.0 CE\modules\migration.py", line 209, in getCatalogNames
    return self._rev_eng_module.getCatalogNames(self.connection)
SystemError: ProgrammingError("('42000', '[42000] [QODBC] Unexpected extra token: . (11017) (SQLExecDirectW)')"): error calling Python module function DbSql92RE.getCatalogNames
ERROR: Retrieve schema list from source: ProgrammingError("('42000', '[42000] [QODBC] Unexpected extra token: . (11017) (SQLExecDirectW)')"): error calling Python module function DbSql92RE.getCatalogNames
Failed


我该怎么办?我不太确定如何诊断这种情况。

最佳答案

代替从INFORMATION_SCHEMA.SELECT TABLE_CATALOG.TABLES使用sp_tables

请参考http://qodbc.com/links/2342

10-06 12:08