MySQL
打开MySQL数据库,然后在在MySQL中新建一个【student】表,创建列为ID和Name,如下图所示:
02Excel
新建一张Excel,Excel列中的名字要与数据库中student的列名一样,如下图所示:
03导入向导
右击数据库中的【student】表,在d出的下拉菜单中选择【导入向导】,如下图所示:
04选择数据格式
会d出一个【导入向导】窗口,选择数据的格式,比如excel的格式为.xlsx,当然有的excel的格式为.xls,根据后缀名而定,如下图所示:
05导入excel
然后要导入方才新建的excel文件,选择文件的存放位置,然后点击【打开】按钮即可,如下图所示:
06选择sheet
然后选择要导入excel文件中的哪一个sheet,比如选择sheet1,然后点击【下一步】按钮,如下图所示:
07导入模式
然后一直点击【下一步】按钮来到【导入模式】,勾选【添加:添加记录到目录表】选项,点击【下一步】按钮,如下图所示:
08开始导入
点击【开始】按钮,当出现【Finished -Successfully】提示时即表示导入成功,如下图所示:
1、打开Excel2、在Excel中打开VBA编辑器:方法一:Alt+F11 方法二:开发工具->代码->Visual Basic
※如果没有开发工具请:文件->选项->自定义功能区在右边的窗口中将开发工具前的方框□打钩√
3、双击ThisWorkbook打开编辑页面,并添加必要引用
需要添加的引用包括:Microsoft ActiveX Dat Objects Recordset 6.0 Library以及Microsoft ActiveX Dat Objects 6.1 Library
4、编写函数【俗称写代码】
直接扔出代码如下:
Public Sub MySQL_Test()
Dim Con As ADODB.Connection
Dim Rec As ADODB.Recordset
Dim iRowscount As Long
Set Con = New ADODB.Connection
Con.ConnectionString = “Driver={MySQL ODBC 5.3 ANSI Driver}” + _
“Server=你的MySQL服务器地址” + _
“DB=需要连接的数据库名” + _
“UID=登录数据库的账号” + _
“PWD=登录数据库的密码” + _
“OPTION=3” + _
“Stmt=Set Names ‘GBK’”
Con.Open
Set Rec = New Recordset
Set Rec = Con.Execute(“想要执行的SQL语句”, iRowscount, adCmdText)
Range(“a1”).CopyFromRecordset Rec ‘在Excel中打印出查询结果
Rec.Close: Set Rec = Nothing
Con.Close: Set Con = Nothing
End Sub
※更为详细的代码和范例请参考附件给出的文档;
5、调试与运行
直接按F5就可以运行了, 或者点击上方的运行按钮【但不运行貌似是F8】
代码没有问题的话就会出现你想要的结果,下面是示范例子:
6、方便快捷的运行方式
当代码写好之后不用每次进入VBA编辑器运行代码,只需要在工作sheet上创建一个和这个代码相关联的按钮就好了,具体过程:开发工具->(控件)插入->表单控件.按钮(就是插入里面的第一个) 之后在工作sheet中随便左键点击会出现如下对话框
接下来会在工作区域出现一个按钮,是可以拖动他的,拖动到你想要的位置后鼠标点击空白区域,确定编辑(想要再次编辑可以在按钮上右键 或者 点击窗口的‘设计模式’),再次点击按钮就可以执行代码中的内容了;
7、好了,接下来就保存好你的文档吧,记得需要保存为 启用宏的工作簿(*.xlsm)
一、假如excel中有四列数据,希望导入到数据库中mytable
中,对应的字段分别为field1,field2,field3,field4.
二、在excel表格中增加一列(?excel应该是E列),利用excel的公式自动生成SQL语句(这个很重要,别写错了),具体方法
如下:
1、增加一列(excel应该是E列,因为我们原有4列数据,分别为A\B\C\D列)
2、在第一行(这一行必须为有效数据行否则出错)的E列,就是E1中输入公式=CONCATENATE("insert
into
table
(field1,field2,field3,field4)
values
('",A1,"','",B1,"','",C1,"','",D1,"')")
3、此时E1已经生成如下的SQL语句:
insert
into
mytable
(field1,field2,field3、field4)
values
('A1中
的数据','B1','C1','D1')
4、将E1的公式复制到所有行的E列,(就是用鼠标点住E1单元格的右下角,一直拖拽下去,到最后一行数据)
5、此时E列已经生成了所有的SQL语句
6、选中E列把E列数据复制到一个纯文本文件中,命名为
例如:excel.txt
三、把excel.txt
放到数据库中运行即可,可通过命令行导入
source
f:\excel.txt
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)