我正在开发一个项目atm,我需要将存储在MS ACCESS数据库中的数据导入mySql。对于mySql,我在Ubuntu机器上使用phpMyAdmin,我有另一台Windows机器,我可以从中访问Access数据库,在MS Access 2003中,我找不到将数据转换为mySql的选项?可以这样做吗?
答案 0 :(得分:8)
看看Access to MySQL。使Access数据库转换为MySQL变得容易。
答案 1 :(得分:2)
通过在Access中选择一个表并从“文件”菜单中选择“导出”,始终可以快速,脏地从Access导出到任何ODBC数据库。其中一个导出选项(位于底部的下拉列表中)是ODBC,如果您为其他数据库设置了DSN,则可以直接导出。显然,数据类型不一定非常适合目标数据库,但它不会错误地转换任何数据 - 您可能需要在导出后收紧数据类型。
我认为Access可以做到这一点令人惊讶,说实话,但它确实有效。
答案 2 :(得分:1)
在Web服务器上运行带有MySQL数据库的Access前端应用程序的逐步指南(您不需要对表进行导入,您可以在Web服务器上使用它们的msaccess应用程序)并将MsAccess表导出到MySQL(一旦开始执行路径,你想要它是一条双向道路,相信我):
如果您正在运行MsAccess,我想您正在使用Windows
取决于您的服务器,您可能在查找服务器名称或IP时遇到一些困难,请查找SSH数据库连接(或类似的东西)。例如,阅读NetSol的常见问题解答:http://www.networksolutions.com/support/how-to-back-up-the-mysql-database-using-ssh/
如果你想从MsAccess对MySQL进行BATCH EXPORT / DUMP,你可以在访问中创建一个FORM,在它上面放一个按钮,然后在VBA中为OnClick()事件创建这个子:
Dim sTblNm As String
Dim sTypExprt As String
Dim sCnxnStr As String, vStTime As Variant
Dim db As Database, tbldef As DAO.TableDef
On Error GoTo ExportTbls_Error
sTypExprt = "ODBC Database"
sCnxnStr = "ODBC;DSN=DSNname;UID=userOnServer;PWD=pwdOnServer"
vStTime = Timer
Application.Echo False, "Visual Basic code is executing."
Set db = CurrentDb()
For Each tbldef In db.TableDefs
Debug.Print tbldef.Name
sTblNm = tbldef.Name
DoCmd.TransferDatabase acExport, sTypExprt, sCnxnStr, acTable, sTblNm, sTblNm
Next tbldef
MsgBox "Done!"
On Error GoTo 0
SmoothExit_ExportTbls:
Set db = Nothing
Application.Echo True
Exit Sub
ExportTbls_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure ExportTblsODST"
Resume SmoothExit_ExportTbls
有时,在运行非英语窗口时,您可能会收到错误2507.将“ODBC数据库”更改为“ODBC”(使用法语)。
导入:在MsAccess中: 1.文件 2.外部数据源 3.链接表
一个MsAccess前端并不真正关心它正在使用什么数据库引擎,因此安全的做法是拥有2个独立的MDB:查询,表单,宏等原始数据。这样,您就可以无缝地从使用本地数据库切换到远程服务器。并且您的核心应用程序文件不包含正确的数据。