VB远程访问MYSQL代码图解
首先需要安装MySQL Connector/ODBC
地址:http://dev.mysql.com/downloads/connector/odbc/
根据自己的系统(运行环境: Win7/XP/Win9x/2000/2003),选择相应的版本,如果页面打不开,可以直接试试下面的下载链接:
http://dev.mysql.com/get/Downloads/Connector-ODBC/5.3/mysql-connector-odbc-5.3.4-win32.msi
http://dev.mysql.com/get/Downloads/Connector-ODBC/5.3/mysql-connector-odbc-5.3.4-winx64.msi

如果安装的时候,弹出下面的警告对话框

说明缺少VC++组件,点击Abort终止,然后去微软官网下载一个安装后再重复刚才的
Microsoft Visual C++ 2010 Redistributable Package
64-bit version: http://www.microsoft.com/en-us/download/confirmation.aspx?id=14632
32-bit version: http://www.microsoft.com/en-gb/download/details.aspx?id=5555
安装过程全英文,一路下一步
关于VB链接MYSQL的资料百度一大堆,大多数和下面这种差不多相似,而且是很久以前的代码,使用的时候会报错(-2147467259)

主要的问题在于"DRIVER={MySQL ODBC 5.1 Driver}"这句错了,首先来看看刚才我们安装后的MySQL Connector/ODBC
开始--控制面板--管理工具--数据源(ODBC)
在 用户DSN 选项卡中的表格如果没有发现MySQL字样的,那么就点击右侧的 添加 查看,如下图

发现了两个MySQL的驱动(然后关闭上面的窗口,不用做添加操作等,只是看看)
MySQL ODBC 5.3 ANSI Driver 和 MySQL ODBC 5.3 Unicode Driver
将上面的名称随便选一个替换到刚才的链接字符试试
我这里测试两个都可以连接上使用,即:
cn.ConnectionString = "DRIVER={MySQL ODBC 5.3 Unicode Driver};Persist Security Info=True;SERVER=... ..."
cn.ConnectionString = "DRIVER={MySQL ODBC 5.3 ANSI Driver};Persist Security Info=True;SERVER=... ..."
下面是工程示例,新建工程,添加textbox和command
Option Explicit
'引用 Microsoft ActiveX Data Objects 2.x Library
Private Sub Command1_Click()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Set cn = ConnMySQL("root", "123456", "test", "192.168.1.101")
If cn Is Nothing Then
If Err.Number <> 0 Then
MsgBox Err.Number & " " & Err.Description, vbOKOnly & "连接MySQL发生错误"
Else
MsgBox "连接失败", vbOKOnly & "提示"
End If
Exit Sub
End If
rs.CursorLocation = adUseClient
rs.Open "SELECT * FROM ssc_members", cn, adOpenDynamic, adLockOptimistic, adCmdText
Me.Caption = rs.RecordCount
If rs.RecordCount > 0 Then
rs.MoveFirst
Do Until rs.EOF
Text1.Text = Text1.Text & rs("username").Value & vbCrLf
rs.MoveNext
DoEvents
Loop
End If
cn.Close
End Sub
'-----------------------------------------------------------------------------------------------------
Public Function ConnMySQL(uid As String, pwd As String, db_name As String, Optional host As String = "127.0.0.1", Optional port As Integer = 3306) As ADODB.Connection
Dim cn As New ADODB.Connection
On Error GoTo errline
cn.Mode = adModeReadWrite
cn.ConnectionString = "DRIVER={MySQL ODBC 5.3 Unicode Driver};" _
& "Persist Security Info=True;" _
& "SERVER=" & host _
& ";PORT=" & port _
& ";DATABASE=" & db_name _
& ";UID=" & uid _
& ";PWD=" & pwd _
& ";OPTION=3"
cn.Open
If cn.State = adStateOpen Then
Set ConnMySQL = cn
End If
Exit Function
errline:
End Function
关于远程访问时MYSQL的设置,详见另一篇图解 http://www.cnblogs.com/xiii/p/4890885.html
VB远程访问MYSQL代码图解的更多相关文章
- 数据库 MySQL安装图解
MySQL安装图解 一.MYSQL的安装 1.打开下载的mysql安装文件,双击运行mysql-5.5.40-win32.msi. 2.选择安装类型,有"Typical(默认)". ...
- MySQL安装图解
MySQL安装图解 打开下载的mysql安装文件mysql-5.0.27-win32.zip,双击解压缩,运行“setup.exe”,出现如下界面: mysql安装向导启动,按“N ...
- Ubuntu下远程访问MySQL数据库
MySQL远程访问的命令 格式: mysql -h主机地址 -u用户名 -p用户密码 jack@jack:~$ mysql -h192.168.5.154 -usaledata -pEnter pas ...
- mysql用户权限设置,远程访问设置、设置固定ip远程访问,设置root用户不能远程访问mysql数据库
关于mysql的用户管理,笔记 1.创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localhost ...
- MySQL下载与MySQL安装图解(MySQL5.7与MySQL8.0)
MySQL下载与MySQL安装图解(MySQL5.7与MySQL8.0) 1.MySQL下载(MySQL8.0社区版) mysql下载方法,请根据风哥以下步骤与图示来下载mysql8.0最新社区版本: ...
- 谈一谈如何远程访问MySQL(腾讯云,云主机)
连接MySQL (其他的sql 基本相同套路) 腾讯云不管怎么设置端口和MySQL权限以及监听端口就是不能连接? 远程访问MySQL数据库的几个关键点 端口设置 数据库权限设置 数据库的监听端口设置 ...
- 允许远程访问MySQL的设置
允许远程访问MySQL的设置 学习了:http://www.cnblogs.com/hyzhou/archive/2011/12/06/2278236.html Windows版本有workbench ...
- Ubuntu常用命令大全 以及 PHP+MySQL代码部署在Linux(Ubuntu)上注意事项
PHP+MySQL代码部署在Linux(Ubuntu)上注意事项 https://cloud.tencent.com/developer/article/1024187 Ubuntu常用命令大全 ht ...
- 07 MySQL安装图解--Windows版本
MySQL安装图解 使用微信扫码关注微信公众号,并回复:"MySQL环境",免费获取下载链接! 1.安装MySQL 2.校验MySQL 3.登录MySQL 登录MySQL:mysq ...
随机推荐
- Redis笔记(五)Redis的事务
>>关系型数据库的事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消. Atomic(原子性): 一个事务(transaction)中的 ...
- 【JAVA多线程概述】
一.多线程概述 一个进程中至少有一个线程,每一个线程都有自己运行的内容,这个内容可以称为线程要执行的任务. 不能没一个问题都使用多线程,能使用单线程解决的问题就不要使用多线程解决. 使用多线程的弊端: ...
- org.hibernate.HibernateException: A collection with cascade="all-delete-orphan" was no longer referenced by the owning entity instance:
详细错误堆栈信息: org.hibernate.HibernateException: A collection with cascade="all-delete-orphan" ...
- C# 令某个窗体可跟着鼠标移动
/// <summary> /// 使窗口的中的指定控件支持运行时移动 /// TODO:运行时缩放 /// </summary> public class ControlMo ...
- phpcms v9中调用栏目及调用多个子栏目中的文章列表
调用一个指定栏目列表: {pc:content action="lists" catid="6" order="id DESC& ...
- Codeforces Round#250 D. The Child and Zoo(并差集)
题目链接:http://codeforces.com/problemset/problem/437/D 思路:并差集应用,先对所有的边从大到小排序,然后枚举边的时候,如果某条边的两个顶点不在同一个集合 ...
- N种内核注入DLL的思路及实现
内核注入,技术古老但很实用.现在部分RK趋向无进程,玩的是SYS+DLL,有的无文件,全部存在于内存中.可能有部分人会说:"都进内核了.什么不能干?".是啊,要是内核中可以做包括R ...
- Intent界面跳转与传递数据
Activity跳转与传值,主要是通过Intent类,Intent的作用是激活组件和附带数据. intent可以激活Activity,服务,广播三类组件. 本博文讲的是显示意图激活Activity组件 ...
- WebApi多数据库切换
用抽象工厂来解决多数据库之间的切换问题是普遍的,像以下几篇文章都讲的很具体 申明之前写的存在强大漏洞 -- 之前有涉及到IoC Autofac的知识点,鄙人孤陋寡闻,在亲身实践后才发现其中奥妙可参照一 ...
- jsp遍历、循环
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 1. <% Te ...