加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MS Access MySQL转换帮助(巨型表)

发布时间:2021-05-20 05:03:52 所属栏目:MySql教程 来源:网络整理
导读:所以我有一个巨大的表,包含大约700万条记录,在MS Access(* .mdb)中,我希望将它转换为更可行的MySQL格式,并将其存储在我的网络服务器上.文件本身重2GB. 问题是,由于表格太大,它不会让我正常导出(Access表示限制是65,536条记录.) 我尝试了一些第三方软件,但无

所以我有一个巨大的表,包含大约700万条记录,在MS Access(* .mdb)中,我希望将它转换为更可行的MySQL格式,并将其存储在我的网络服务器上.文件本身重2GB.

问题是,由于表格太大,它不会让我正常导出(Access表示限制是65,536条记录.)

我尝试了一些第三方软件,但无济于事.

任何人都可以推荐一种干净的方式,而不会损坏内部的数据?

在此先感谢您的帮助.

最佳答案 如果您还没有安装MySQL的ODBC驱动程序,请安装它.最新版本可在此处获取:Download Connector/ODBC

从Windows ODBC数据源管理器为MySQL服务器创建DSN(数据源名称).

然后从Access 2003中,在“数据库”窗口中选择您的表,然后选择“文件” – >“从Access导出”主菜单.在“导出表’yourtablename’到…”对话框中,从“保存类型”下拉列表(位于对话框底部)中选择“ODBC数据库()”.下一个对话框允许您指定MySQL将用于导出表的名称,并且默认为Access表名.单击“确定”后,您将看到另一个对话框“选择数据源”,您可以在其中选择DSN for MySQL.在该对话框上单击“确定”后,您可能会再问一个用户名和密码.提供它们,然后单击“确定”.

希望你的表格会毫无错误地转移.但是,我从未使用MySQL进行过该操作.通过ODBC传输到SQL Server和PostGreSQL,它对我有用.所以我不明白为什么它也不适用于MySQL.

此外,我从未试图一次性出口700万条记录.如果它窒息,我们将不得不找出解决方法.

如果您使用的是Access 2007而不是2003,请从功能区的“导出”部分开始查找类似的选项.

我建议这种方法,因为我的印象是这个导出将是一次性交易,所以我认为Access UI导出方法将是最简单的.但是,您可以使用带有ODBC DSN的DoCmd.TransferDatabase Method对VBA代码执行基本相同的操作.

另一种方法是在MySQL中创建一个兼容的表结构,在Access目的表的Access中创建一个链接(再次使用你的DSN),然后从Access运行一个“追加查询”:

INSERT INTO link_to_mysql_table (field1,field2,field3,etc)
SELECT field1,etc
FROM access_table;

如果导出会在700万条记录上产生阻塞,那么追加查询方法会很有用.您可以添加WHERE子句以将SELECT查询的输出记录集限制为可管理的块大小,然后使用不同的WHERE重复以指定另一个块.

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读