十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
vb按说是可以连接任何数据库的,只是看有没有相应的连接插件,如果没有的话,换个数据库吧,应该不会影响应用
创新新互联,凭借10年的做网站、网站建设经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有数千家案例。做网站建设,选成都创新互联公司。
连接跟
ms
sql
是一样的,不地要求就是本机必须有mysql的组件。
VB连接MYSQL数据的方法
博客分类:
VB
VBMySQLSQLServerSQLSocket
第一步:上网下载mysql-connector-odbc-5.1.6-win32.msi
第二步:安装mysql-connector-odbc-5.1.6-win32.msi
第三步:运行VB并新建一标准EXE工程, 通过菜单工程-引用 打开”引用”对话框, 找到 MicrosoftActiveX Data Objects x.x Library , 其中 x.x 是版本号, 可能会有很多个, 这里我选择的是2.5
第四步:打开代码窗口, 在 Form_Load 过程中输入下面的代码(具体说明在代码的注释中):
Vb代码
' 定义并创建数据库连接和访问对象
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 = "root"
db_pass = ""
db_data = "erqiuda"
' MySQL ODBC 连接参数
'+------------+---------------------+----------------------------------+
'| 参数名 | 默认值 | 说明 |
'+------------+------------------------------------------------------–+
'| user | ODBC (on Windows) | MySQL 用户名 |
'| server | localhost | MySQL 服务器地址 |
'| database | | 默认连接数据库 |
'| option | 0 | 参数用以指定连接的工作方式 |
'| port | 3306 | 连接端口 |
'| stmt | | 一段声明, 可以在连接数据库后运行 |
'| password | | MySQL 用户密码 |
'| socket | | (略) |
'+------------+---------------------+----------------------------------+
' 详细查看官方说明
'
strCn = "DRIVER={MySQL ODBC 5.1 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
' 访问表users
sql = "select * from users"
rs.Open sql, cn
MsgBox rs.RecordCount
由于ADO对象不直接支持MySQL,所以必须先安装MyODBC, 后者也是一个免费产品,在 上有下载,安装好了MyODBC, 就可以在ODBC数据源管理中配置一个数据源名称,把它指向你想连接的MySQL数据库。代码如下:Sub connectMySQL() '通过MyODBC去连接MySQL数据库,并将Microsoft SQL Server 7 '的数据转进mysql中 Dim sConnect As String, sSql As String, i As Long Dim cnMSSQL As New ADODB.Connection Dim cnMySQL As New ADODB.Connection '声明并创建对象 连接 Dim rs As New ADODB.Recordset '声明并创建对象 记录集 Dim cm As New ADODB.Command '声明并创建对象 命令 sConnect = "dsn=mysql1" '指定MySQL的数据源名称 cnMySQL.Open sConnect '连接到 mysql sConnect="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;pwd=123456;Initial Catalog=softdown;Data Source=ntserver" '连接到 ms sql server 7 cnMSSQL.Open sConnect 'sSql = "create table softinfo (softNum smallint,softname varchar(70),softdesc blob," _ "softpath varchar(30),softleng varchar(10),softclass varchar(10),softsugest tinyint(1)," _ "softdown smallint(4))" '创建新的MySQL数据表语句 sSql = "select * from softinfo order by softnum" rs.Open sSql, cnMSSQL, 1, 1 While Not rs.EOF sSql = "insert into softinfo values (" Trim(rs(0).Value) ",'" Trim(rs(1).Value) _ "','" Trim(rs(2).Value) "','" Trim(rs(3).Value) "','" Trim(rs(4).Value) _ "','" Trim(rs(5).Value) "'," Trim(rs(6).Value) "," Trim(rs(7).Value) ")" cm.ActiveConnection = cnMySQL cm.CommandType = adCmdText cm.CommandText = sSql cm.Execute rs.MoveNext Wend rs.Close Set rs = Nothing cnMySQL.Close Set cnMySQL = Nothing cnMSSQL.Close Set cnMSSQL = Nothing End Sub
和SQL数据库差不多的,下面是我用vb6.0连接本地mysql数据库的连接字符串
"driver={MySQL
ODBC
3.51
Driver};server=127.0.0.1;database=mysql;uid=root;pwd=sasa"
1、显示密码
如:MySQL
连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”
C:/mysql -h
192.168.5.116 -P 3306 -u root -p123456
2、隐藏密码
如:MySQL 连接本地数据库,用户名为“root”
C:/mysql -h
localhost -u root -p
Enter password: