如何使用Visual Basic连接Visual Studio 2015与WAMP Server 3.1.0?
搞定Visual Basic与WAMP MySQL的连接问题
Hey,从Access转MySQL来优化性能是个明智的选择,咱们一步步来解决连接的难题:
第一步:先把WAMP的MySQL环境准备好
- 确保WAMP服务正常运行:看右下角的WAMP图标是绿色的,点开后检查MySQL服务是Running状态(要是没启动,点
MySQL > Service > Start Service就行)。 - 迁移你的Access数据:
- 打开phpMyAdmin(WAMP图标里直接点),先建一个和你Access库结构一致的数据库(比如叫
my_app_db)。 - 把Access里的数据导出成CSV格式,再通过phpMyAdmin的「导入」功能把CSV导入到对应的MySQL表里——这步比用复杂工具靠谱多了。
- 打开phpMyAdmin(WAMP图标里直接点),先建一个和你Access库结构一致的数据库(比如叫
- 确认MySQL的本地访问权限:默认WAMP的MySQL只允许localhost访问,完全够你本地开发用。去phpMyAdmin的「用户账户」里,检查root用户的Host是
localhost或127.0.0.1,密码记得是你设置的(没设置过的话默认是空)。
第二步:给VS2015装MySQL连接驱动
VS2015需要专门的驱动才能连MySQL,用NuGet装最方便:
- 打开你的VB项目,点顶部菜单
Tools > NuGet Package Manager > Manage NuGet Packages for Solution。 - 在「浏览」里搜
MySQL.Data,选适配.NET Framework的版本(VS2015一般用.NET 4.5+,选对应版本就行),安装到你的项目里。
第三步:写VB连接代码(两种方案任选)
方案一:用MySQL Connector/NET(推荐)
这是官方的驱动,稳定性好,代码示例如下:
Imports MySql.Data.MySqlClient Public Class MainForm Private Sub btnConnect_Click(sender As Object, e As EventArgs) Handles btnConnect.Click ' 替换成你的实际配置 Dim connStr As String = "server=127.0.0.1;user id=root;password=你的MySQL密码;database=my_app_db;port=3306;" Dim dbConn As New MySqlConnection(connStr) Try dbConn.Open() MessageBox.Show("数据库连接成功啦!") ' 这里可以加你的数据操作逻辑,比如查询、插入 Catch ex As MySqlException MessageBox.Show("连接失败:" & ex.Message) Finally ' 不管成功失败,记得关连接 If dbConn.State = ConnectionState.Open Then dbConn.Close() End If End Try End Sub End Class
记得把你的MySQL密码和my_app_db换成你自己的配置哦。
方案二:用ODBC连接
如果你不想用NuGet,也可以走ODBC路线:
- 打开Windows的「ODBC数据源管理器」(注意选32位还是64位,要和你的VS、WAMP版本匹配),添加
MySQL ODBC 8.0 Unicode Driver(WAMP自带这个驱动)。 - 配置数据源:填个名字,TCP/IP服务器写
127.0.0.1,端口3306,用户名root,密码,选你创建的数据库,点「测试」确认能连上。 - VB代码示例:
Imports System.Data.Odbc Public Class MainForm Private Sub btnConnect_Click(sender As Object, e As EventArgs) Handles btnConnect.Click Dim connStr As String = "DSN=你设置的ODBC数据源名;UID=root;PWD=你的MySQL密码;" Dim dbConn As New OdbcConnection(connStr) Try dbConn.Open() MessageBox.Show("数据库连接成功!") Catch ex As OdbcException MessageBox.Show("连接失败:" & ex.Message) Finally If dbConn.State = ConnectionState.Open Then dbConn.Close() End If End Try End Sub End Class
常见坑排查
- 提示「拒绝访问」:检查MySQL密码是不是错了,或者root用户的Host是不是设成了
localhost(要是改成%能允许所有IP,但本地开发没必要)。 - 提示「找不到驱动」:要么NuGet包没装对,要么ODBC驱动的位数和VS不匹配(比如VS是32位,就用32位的ODBC管理器)。
- WAMP图标是黄色:说明Apache或MySQL没启动,重启WAMP试试,或者看日志找问题。
内容的提问来源于stack exchange,提问作者DatNoobPotatoPCGuy
相关产品推荐
相关产品推荐

