3

我有一个问题,并希望我可以依靠这里的一些经验来寻求建议并朝着正确的方向前进。我有一个由专有软件制作的 MS Access 文件。我只想从这个表中取出一半的列,然后导入新的(尚未设置)mysql 数据库。

我不知道如何做到这一点或最好的方法是什么。每晚都会获取新数据,然后作为自动任务再次导入。

access 数据库中的一列是 jpeg 文件的 url,我想下载此文件并自动作为 BLOB 类型导入数据库。

有没有办法自动做到这一点?这将在 Windows 机器上,所以也许它可以用 WSH 编写脚本?

4

2 回答 2

5

这是一个 bash 脚本linux示例,使用mdbtools从 mdb 文件自动提取和导入到 mysql。

#!/bin/bash

MDBFILE="Data.mdb"

OPTIONS="-H -D %y-%m-%d"
mdb-export $OPTIONS $MDBFILE  TableName_1 >  output_1.txt
mdb-export $OPTIONS $MDBFILE  TableName_2 >  output_2.txt

mdb-export $OPTIONS $MDBFILE  TableName_n >  output_n.txt

MYSQLOPTIONS=' --fields-optionally-enclosed-by=" --fields-terminated-by=, -r '
mysqlimport $MYSQLOPTIONS -L -uuser -ppasword database output_1.txt
mysqlimport $MYSQLOPTIONS -L -uuser -ppasword database output_2.txt
mysqlimport $MYSQLOPTIONS -L -uuser -ppasword database output_n.txt

您可以使用其他一些 mysqlimport 选项: --delete:从目标 mysql 表中删除以前的数据。--ignore: 忽略重复 --replace: 如果发现重复则替换

这不是 Windows 解决方案,但我希望它有所帮助。

于 2008-10-28T12:21:46.020 回答
0

http://www.dbtalk.net/mailing-database-mysql-win32/what-quickest-way-convert-access-136837.html

搜索 Kofler(他写了一本德语书,其中一部分是 mdb2sql 转换器)

这是一个较新的版本。 http://www.amazon.de/Definitive-Guide-MySQL/dp/1590595351/ref=sr_1_3?ie=UTF8&s=books-intl-de&qid=1225197012&sr=8-3

于 2008-10-28T12:30:42.213 回答