如何导入一个Access MDB格式的数据库到MySQL (utf8_general_ci)?
How to import an Access MDB format database to MySQL (utf8_general_ci)?
我看过一些关于此问题的主题,但 none 的免费解决方案适用于 utf8_general_ci
。例如,当我们在文件中有阿拉伯语单词时,我们需要 utf8_general_ci
。
1 - 我已尝试 "MySQL WorkBench",但我没有看到任何更改目标 table 排序规则的选项,这是默认排序规则 (latin1_swedish_ci
)。所以阿拉伯语单词是这样的 > äÇåíÏ
2 - 与 MS Access 的情况相同。我已经使用了它的 "export to ODBC" 功能,但没有看到任何更改目标 table 排序规则的选项,所以文字是这样的 ????
.
3- 我已经尝试过这个已知的工具,bullzip access to mysql migrate 但不幸的是它在迁移开始时崩溃,因为我的 .mdb 文件超过 1 GB。也许有将 mdb 文件分成 5 个或更多部分的工具??
4 - 不幸的是,ESF 数据库迁移工具包的试用版在所有文本字段的开头添加了字符 "T",我不能为此支付 219 美元。
有人知道这个问题的免费解决方案吗?
将 table 导出到 ODBC 数据源时,Access 发出 CREATE TABLE
语句,其中仅包含 table 名称、列名称和列类型。因此 table 的字符集和排序规则将是该数据库的默认值。
对于 MySQL,如果数据库的默认字符集是 latin1
,那么将使用 latin1
字符集创建 table。然后,当 Access 尝试将 INSERT
Unicode 字符放入其中时,它们将被替换为 MySQL table.
中的 ?
个字符
要使用 utf8
字符集创建 table,您可以使用
更改数据库的默认字符集
ALTER DATABASE `databasename` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
然后将 table 从 Access 导出到 MySQL。
如果您无法更改数据库的默认字符集,那么另一个选择是
- 创建一个使用
utf8
字符集 的临时 MySQL 数据库
- 从Access中导出table到临时数据库,然后
- copy/move table 从临时数据库到主数据库。
我看过一些关于此问题的主题,但 none 的免费解决方案适用于 utf8_general_ci
。例如,当我们在文件中有阿拉伯语单词时,我们需要 utf8_general_ci
。
1 - 我已尝试 "MySQL WorkBench",但我没有看到任何更改目标 table 排序规则的选项,这是默认排序规则 (latin1_swedish_ci
)。所以阿拉伯语单词是这样的 > äÇåíÏ
2 - 与 MS Access 的情况相同。我已经使用了它的 "export to ODBC" 功能,但没有看到任何更改目标 table 排序规则的选项,所以文字是这样的 ????
.
3- 我已经尝试过这个已知的工具,bullzip access to mysql migrate 但不幸的是它在迁移开始时崩溃,因为我的 .mdb 文件超过 1 GB。也许有将 mdb 文件分成 5 个或更多部分的工具??
4 - 不幸的是,ESF 数据库迁移工具包的试用版在所有文本字段的开头添加了字符 "T",我不能为此支付 219 美元。
有人知道这个问题的免费解决方案吗?
将 table 导出到 ODBC 数据源时,Access 发出 CREATE TABLE
语句,其中仅包含 table 名称、列名称和列类型。因此 table 的字符集和排序规则将是该数据库的默认值。
对于 MySQL,如果数据库的默认字符集是 latin1
,那么将使用 latin1
字符集创建 table。然后,当 Access 尝试将 INSERT
Unicode 字符放入其中时,它们将被替换为 MySQL table.
?
个字符
要使用 utf8
字符集创建 table,您可以使用
ALTER DATABASE `databasename` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
然后将 table 从 Access 导出到 MySQL。
如果您无法更改数据库的默认字符集,那么另一个选择是
- 创建一个使用
utf8
字符集 的临时 MySQL 数据库
- 从Access中导出table到临时数据库,然后
- copy/move table 从临时数据库到主数据库。