加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

vb6通过ODBC连接mysql数据库

发布时间:2020-12-16 22:55:23 所属栏目:大数据 来源:网络整理
导读:在尝试连接数据库之前,需要简单说明一下连接数据库的两种最常见的方式: 一种是通过建立 DSN 来连接,这种比较麻烦,程序移植性差; 我一般采取利用 ADODB 连接数据库的方式,这种比较灵活方便,不需额外工作,方便程序移植. 下面的例子就是通过 ADODB 连接 MySQL

在尝试连接数据库之前,需要简单说明一下连接数据库的两种最常见的方式: 一种是通过建立 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 语句上.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读