我有一个问题,希望我可以依靠这里的一些经验来寻求建议和推动正确的方向。我有一个由专有软件制作的MS Access文件。我只想从这个表中取出一半的列,并导入到新的(尚未设置的)mysql数据库。
我不知道如何做到这一点或最好的方法是什么。每天晚上都会获得新数据,并再次导入,作为自动任务。
访问数据库中的一列是jpeg文件的URL,我想下载此文件并自动导入数据库作为BLOB类型。
有没有办法自动执行此操作?这将在Windows机器上,所以也许它可以用WSH编写脚本?
答案 0 :(得分: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解决方案,但我希望它有所帮助。
答案 1 :(得分:0)