实现过程:
1.连接数据库首先要去mysql官网下载个odbc数据源。
安装之后,即可在控制面板-管理工具-odbc数据源-添加,中看到mysql驱动名称:
'连接数据库strcnn=provider=msdasql.1;persist security info=true;extended properties='driver=mysql odbc 5.3 unicode driver;server=188.1.1.132;uid=grute;pwd=grute;database=grute;port=3307'set cnn = createobject(adodb.connection)cnn.open strcnn'查看是否连接成功,成功状态值为1if cnn.state = 0 then msgbox 连接数据库失败 wscript.quit end if
2.连接excel
'连接exceldim oexcel,owb,osheet set oexcel= createobject(excel.application) oexcel.workbooks.add()
3.输入sql语句,从mysql中查找数据
strquery = select * from testset rs = cnn.execute(strquery)
4.把mysql的查询结果循环放入excel
'i为excel行号,k为列号
dim i i=0 arr_column = array(序号, 姓名, 用户名, 密码, 权限) if not rs.bof then do while not rs.eof i = i + 1 for k = 1 to 5 '循环5次 oexcel.cells(i, k).value = rs(arr_column(k - 1)) next rs.movenext loop else wscript.echo 失败 end if
5.保存excel
oexcel.activeworkbook.saveas(c:\users\administrator\desktop\test.xlsx)
6.退出
oexcel.workbooks.close oexcel.quit rs.closecnn.closeset cnn = nothingmsgbox 导入完成
以上,
完全代码如下,要求本机安装mysql数据源,且188.1.1.132机器上mysql用户名为grute、密码为grute、库名为grute、表名为test、test的列名分别为(序号,姓名,用户名,密码,权限),保存为后缀名vbs即可运行。
'定义变量dim cnndim rstdim strcnndim ii = 0arr_column = array(序号, 姓名, 用户名, 密码, 权限)'连接数据库strcnn=provider=msdasql.1;persist security info=true;extended properties='driver=mysql odbc 5.3 unicode driver;server=188.1.1.132;uid=grute;pwd=grute;database=grute;port=3307'set cnn = createobject(adodb.connection)cnn.open strcnn'查看是否连接成功,成功状态值为1if cnn.state = 0 then msgbox 连接数据库失败 wscript.quit end if'连接exceldim oexcel,owb,osheet set oexcel= createobject(excel.application) oexcel.workbooks.add()'输入sql语句strquery = select * from testset rs = cnn.execute(strquery)'i为excel行号,k为列号arr_column = array(序号, 姓名, 用户名, 密码, 权限)if not rs.bof then do while not rs.eof i = i + 1 for k = 1 to 5 '循环5次 oexcel.cells(i, k).value = rs(arr_column(k - 1)) next rs.movenext loopelse wscript.echo 失败end ifoexcel.activeworkbook.saveas(c:\users\administrator\desktop\test.xlsx)oexcel.workbooks.close oexcel.quit rs.closecnn.closeset cnn = nothingmsgbox 导入完成
