Tes*_*son 72
你想将mdb转换为mysql(直接转移到mysql或mysql转储)?
试试一款名为Access to MySQL的软件.
访问MySQL是一个小程序,将Microsoft Access数据库转换为MySQL.
- 向导界面.
- 将数据直接从一台服务器传输到另一台服
- 创建转储文件.
- 选择要传输的表.
- 选择要传输的字段.
- 传输密码保护的数据库
- 支持共享安全性和用户级安全性.
- 可选的索引传输.
- 可选的记录转移.
- 在字段定义中可选地传输默认值.
- 标识并传输自动编号字段类型.
- 命令行界面.
- 易于安装,卸载和升级.
有关屏幕截图,请参阅上述链接以获取分步教程.
Nic*_*y77 45
如果您可以访问安装了mdbtools的linux机器,则可以使用此Bash shell脚本(另存为mdbconvert.sh):
#!/bin/bash
TABLES=$(mdb-tables -1 $1)
MUSER="root"
MPASS="yourpassword"
MDB="$2"
MYSQL=$(which mysql)
for t in $TABLES
do
$MYSQL -u $MUSER -p$MPASS $MDB -e "DROP TABLE IF EXISTS $t"
done
mdb-schema $1 mysql | $MYSQL -u $MUSER -p$MPASS $MDB
for t in $TABLES
do
mdb-export -D '%Y-%m-%d %H:%M:%S' -I mysql $1 $t | $MYSQL -u $MUSER -p$MPASS $MDB
done
Run Code Online (Sandbox Code Playgroud)
要调用它,只需像这样调用它:
./mdbconvert.sh accessfile.mdb mysqldatabasename
Run Code Online (Sandbox Code Playgroud)
它将导入所有表和所有数据.
mik*_*kom 29
我修改了Nicolay77的脚本,将数据库输出到stdout(通常的unix脚本方式),这样我就可以将数据输出到文本文件或将其传输到我想要的任何程序.生成的脚本更简单,效果更好.
一些例子:
./mdb_to_mysql.sh database.mdb > data.sql
./mdb_to_mysql.sh database.mdb | mysql destination-db -u user -p
Run Code Online (Sandbox Code Playgroud)
这是修改后的脚本(保存到to_mysql.sh)
#!/bin/bash
TABLES=$(mdb-tables -1 $1)
for t in $TABLES
do
echo "DROP TABLE IF EXISTS $t;"
done
mdb-schema $1 mysql
for t in $TABLES
do
mdb-export -D '%Y-%m-%d %H:%M:%S' -I mysql $1 $t
done
Run Code Online (Sandbox Code Playgroud)
OSX用户可以通过遵循Nicolay77或mikkom使用该mdbtools效用。您可以通过Homebrew安装它。只需安装自制软件,然后再去
$ homebrew install mdbtools
Run Code Online (Sandbox Code Playgroud)
然后创建家伙描述的脚本之一并使用它。我用过mikkom的,将我所有的mdb文件都转换成sql。
$ ./to_mysql.sh myfile.mdb > myfile.sql
Run Code Online (Sandbox Code Playgroud)
(顺便说一句包含多个表)
小智 6
试试MySQL的数据向导.它是一种用于将结构和数据从任何ADO兼容源(例如MS Access)转换为MySQL数据库的工具.请参阅连接字符串的简要指南,以便为MS Access文件构建连接字符串.