最近研究的东西中, 有一部分涉及到用VB访问MySQL数据库, 今天研究了一下小有收获, 共享出来供大家参考首先下载

MySQL 的 ODBC 驱动, 我下载的是 MySQL ODBC 3.51 without

installer 版, 下载后是一zip包, 随便解压到哪, 然后运行 cmd, 定位路径到解压的目录, 然后运行 install.bat 安装即可, 具体看下面的代码(其中以#开头的为我加的注释):

# 下文中路径都是假设的# 需要修改成你的路径 至此, MySQL ODBC 就安装完成了, 运行控制面板->管理工具->数据源(ODBC) 进入”驱动程序”标签页就可以看到刚刚安装的

MySQL ODBC 驱动了(如图). 在尝试连接数据库之前, 需要简单说明一下连接数据库的两种最常见的方式: 一种是通过建立 DSN 来连接, 这种比较麻烦, 程序移植性差; 我一般采取利用 ADODB 连接数据库的方式, 这种比较灵活方便, 不需额外工作, 方便程序移植.下面的例子就是通过

ADODB 连接 MySQL 数据库:首先, 运行VB并新建一标准EXE工程, 通过菜单 工程->引用

打开”引用”对话框, 找到 Microsoft ActiveX Data Objects x.x

Library , 其中 x.x 是版本号, 可能会有很多个, 这里我选择的是 2.5(如图)

单击”确定”关闭对话框, 这样就在工程中引入了 ado(ActiveX Data Objects),

然后双击Form设计窗体, 打开代码窗口, 在 Form_Load 过程中输入下面的代码(具体说明在代码的注释中):

' 定义并创建数据库连接和访问对象Dim cn As New ADODB.Connection

Dim rs As New ADODB.Recordset

' 定义数据库连接字符串变量Dim strCn As String

' 定义数据库连接参数变量Dim db_host As String

Dim db_user As String

Dim db_pass As String

Dim db_data As String

' 定义 SQL 语句变量Dim sql As String

' 初始化数据库连接变量db_host = "localhost"

db_user = "yourUsername"

db_pass = "yourPassword"

db_data = "yourDatabase"

' MySQL ODBC 连接参数'+------------+---------------------+----------------------------------+

'| 参数名 | 默认值 | 说明 |

'+------------+------------------------------------------------------–+

'| user | ODBC (on Windows) | MySQL 用户名 |

'| server | localhost | MySQL 服务器地址 |

'| database | | 默认连接数据库 |

'| option | 0 | 参数用以指定连接的工作方式 |

'| port | 3306 | 连接端口 |

'| stmt | | 一段声明, 可以在连接数据库后运行 |

'| password | | MySQL 用户密码 |

'| socket | | (略) |

'+------------+---------------------+----------------------------------+

' 详细查看官方说明'

http://dev.mysql.com/doc/refman/5.0/en/myodbc-configuration-connection-parameters.html

strCn = "DRIVER={MySQL ODBC 3.51 Driver};" & _

"SERVER=" & db_host & ";" & _

"DATABASE=" & db_data & ";" & _

"UID=" & db_user & ";PWD=" & db_pass

& ";" & _

"OPTION=3;stmt=SET NAMES GB2312"

' stmt=SET NAMES GB2312

' 这句是设置数据库编码方式' 中文操作系统需要设置成 GB2312

' 这样中文才不会有问题' 版本要求 mysql 4.1+

' 连接数据库cn.Open strCn

' 设置该属性, 使 recordcount 和absolutepage 属性可用cn.CursorLocation = adUseClient

' 访问表 table1

sql = "select * from table1"

rs.Open sql, cn

MsgBox rs.recordCount

很简单吧, 剩下的就和操作其他数据库一样了, 最大的区别就在于一些 SQL 语句上.

BTW:

同时我发现rs.recordset 属性返回 -1,(已解决: cn.CursorLocation =

adUseClient) 还有更多更具体的问题有待研究, 这些将会在

vb访问mysql容易死机_VB访问MySQL相关推荐

  1. mysql 硬盘死机_磁盘空间不够导致mysql崩溃重启

    起因: 群里有人提了句pt-ioprofile,我不知道,就查了查,想测一测,想以后可能会有帮助. 为了能看到效果,我选择了我虚拟机上最大的压测表Sbtest1,该表有100w数据,执行update ...

  2. 在虚拟机docker启动mysql但是宿主机无法访问的问题

    在DockerHub官网查看mysql启动的命令,发现都没有指定端口映射,于是我模仿着执行的命令如下: docker run --name testmysql -e MYSQL_ROOT_PASSWO ...

  3. 解除mysql只有本机可以访问的限制

    1.终端:sudo vim /etc/mysql/my.cnf 2.找到bind-address,注释掉(前面加#) 这里出现问题,发现my.cnf打开根本没有bind-address,但是多了两句话 ...

  4. 安装mysql死机_安装mysql会死机怎么办

    我就废话不多说了,大家还是直接看代码吧~create or replace function aa1(a1 integer[],a2 bigint) returns void AS $$declare ...

  5. mysql清理死链接_对MySQL的死连接Sleep的进程的来源研究

    当前的连接数: mysql> show status like '%Threads_connected%'; +-------------------+-------+ | Variable_n ...

  6. addr2line查看死机代码的位置

    Addr2line 工具(它是标准的 GNU Binutils 中的一部分)是一个可以将指令的地址和可执行映像转换成文件名.函数名和源代码行数的工具.这种功能对于追踪死机地址转换成源码位置很有意义. ...

  7. mysql 查看端口_新手连接MySQL数据库,再也不怕连不上了

    mysql 刚刚学习swoole 微擎框架,需要连接MySQL,配置好连接参数,可是创建Model的时候,总是出错,错误如下: bin/gerent make:model --name=user -- ...

  8. hibernate访问mysql没有响应_Struts2+hibernate + mysql C3P0连接池 导致写数据库无反应(死机)...

    我学hibernate刚学不久,最近用s2h+mysql做了个网站,买了个jsp的空间,发布到空间去了之后,第二天访问却访问不了,一查才知道,hiberante默认的连接数据库的时间有个限度,如果在这 ...

  9. 如何设置mysql让其他人能访问_怎么设置MySQL就能让别人访问本机的数据库了?...

    找到MySQL配置文件,搜索"bind-address",找到这一行: bind-address = 127.0.0.1 在前面加一个#,注释掉这一行,保存,重启MySQL. 再通 ...

最新文章

  1. Cloudera Manager5安装总结遇到问题及解决办法
  2. 零基础学python爬虫-零基础如何学爬虫技术?一篇带你入门!(理论+实操+荐书)...
  3. span 标记 width 设置
  4. java sleep join_Java多線程之sleep,wait,join和yield關鍵字
  5. 【渝粤教育】 国家开放大学2020年春季 1107传感器与测试技术 参考试题
  6. vue里面is_vue中的is
  7. Day24-Ajax文件上传
  8. apache php 3秒,php版本(5.3,5.5,7.0)及运行模式(fast-cgi/fpm,apache模块)之间性能对比测试...
  9. python摄像头跟随人脸_Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
  10. 紧急通知:招募 2000 名 IT 人学英语,免费培训!
  11. C# 进程间通信(共享内存)
  12. OKapi BM25 算法介绍
  13. (CVPR2019)图像语义分割(18) DANet-集成双路注意力机制的场景分割网络
  14. 计算机函数怎么向下填充,excel快速填充公式_Excel向左向右向上向下自动填充公式的方法步骤_excel公式填充...
  15. js定时刷新页面数据
  16. 小楼一夜听春雨···
  17. C语言移动营业厅程序设计,【程序设计论文】C语言教学的移动应用程序设计(共2486字)...
  18. c语言编写fac函数 计算阶乘,编写一个计算阶乘的函数fac
  19. OpenShift 4 - 用 External Secret 集成 Hashicorp Vault
  20. Pycharm下载MaxCompute过程

热门文章

  1. 启动nginx服务报错Job for nginx.service failed because the control process exited with error code.
  2. Linux网络-数据包的接收流程(基于RTL8139网卡驱动程序)
  3. Python hash、xml、configparser、sheve、shutil模块讲解 以及 面向对象初识
  4. JS-为金额添加千分位逗号分割符
  5. 投资股权众筹项目,至少需要关注6个方面
  6. spring 4.0 JUnit简单的Dao,Service测试
  7. 【转】如何用css限制文字长度,使溢出的内容用省略号…显示
  8. codevs1040 统计单词个数
  9. 微软企业库4.1学习笔记(十)企业库的设计
  10. css入门之head区设置