1.安装mysql,
2.安装MyODBC-standard-3.51.07-win.msi
3:vb连接语句是:
Public strcnn As StringPublic sql As String
Public conn As New ADODB.Connection
Public rs As New ADODB.Recordset
Sub link()
strcnn = "driver={MySQL ODBC 3.51 Driver};server=localhost;database=data;uid=root;pwd=zjb"conn.Open strcnn
End Sub
错误MySQL 返回: #1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
出现这种问题也只有在MYSQL4.1.x以上版本,用4.0.x就没问题了。
原因是因为使用的mysql服务器版本中使用了新的密码验证机制,这需要客户端的版本要在4.0以上,原来的密码函数被改为old_password ();,这样使用password()生成的密码在旧的版本上的客户端就不好使了,而PHP中的MYSQL客户端都是3.23的(当然,mysqli的扩展除外),问题就在这了。
1、进入命令行下,转到MYSQL目录的BIN目录下,进入MYSQL命令行模式:
例:d:\mysql\bin>mysql -uroot -p123 用户root,密码123)
2、输入命令:mysql>set password for 'root'@'localhost'=old_password('123'); (注意冒号不能少)
3、退入MYSQL命令行:mysql>q
ok
VB程序访问服务器上一个mysql的库
先在本机上安装最新的ODBC CONNECTER/mysql
无需设置ODBC,就可以使用.
注意MYSQL的帐户登录是根据主机的,设置好MYSQL的帐户后再做测试.
测试代码:
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim fld As ADODB.Field
Dim sql As String
'connect to MySQL server using MySQL ODBC 3.51 Driver
Set conn = New ADODB.Connection
conn.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" _
& "SERVER=192.168.0.1;" _
& " DATABASE=db_name;" _
& "UID=username;PWD=password; OPTION=3"
conn.Open
'create table
conn.Execute "DROP TABLE IF EXISTS my_ado"
conn.E
ODBC加载.
vb中添加一个Adodc的控件.
Public Function conn() As String
conn = "Provider=SQLOLEDB.1;Password=数据库管理密码;Persist Security Info=True;User ID=数据库管理帐号;Initial Catalog=数据库名;Data Source=计算机名"
End Function
Dim rs As New ADODB.Recordset
Dim con As New ADODB.Connection
Dim sql As String
Set con = CreateObject("ADODB.Connection")
con.Open conn
sql = "select * from Admin where username='" & username.Text & "' and password='" & password.Text & "'"
rs.Open sql, con, 1, 1
ODBC加载.
vb中添加一个Adodc的控件.
conn = "Provider=SQLOLEDB.1;Password=数据库管理密码;Persist Security Info=True;User ID=用户名;Initial Catalog=数据库名;Data Source=计算机服务器名称"
Dim rs As New ADODB.Recordset
Dim con As New ADODB.Connection
Dim sql As String
Set con = CreateObject("ADODB.Connection")
con.Open conn
注:不管用什么方法都要有MySql驱动!!!
2.安装MyODBC-standard-3.51.07-win.msi
3:vb连接语句是:
Public strcnn As StringPublic sql As String
Public conn As New ADODB.Connection
Public rs As New ADODB.Recordset
Sub link()
strcnn = "driver={MySQL ODBC 3.51 Driver};server=localhost;database=data;uid=root;pwd=zjb"conn.Open strcnn
End Sub
错误MySQL 返回: #1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
出现这种问题也只有在MYSQL4.1.x以上版本,用4.0.x就没问题了。
原因是因为使用的mysql服务器版本中使用了新的密码验证机制,这需要客户端的版本要在4.0以上,原来的密码函数被改为old_password ();,这样使用password()生成的密码在旧的版本上的客户端就不好使了,而PHP中的MYSQL客户端都是3.23的(当然,mysqli的扩展除外),问题就在这了。
1、进入命令行下,转到MYSQL目录的BIN目录下,进入MYSQL命令行模式:
例:d:\mysql\bin>mysql -uroot -p123 用户root,密码123)
2、输入命令:mysql>set password for 'root'@'localhost'=old_password('123'); (注意冒号不能少)
3、退入MYSQL命令行:mysql>q
ok
VB程序访问服务器上一个mysql的库
先在本机上安装最新的ODBC CONNECTER/mysql
无需设置ODBC,就可以使用.
注意MYSQL的帐户登录是根据主机的,设置好MYSQL的帐户后再做测试.
测试代码:
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim fld As ADODB.Field
Dim sql As String
'connect to MySQL server using MySQL ODBC 3.51 Driver
Set conn = New ADODB.Connection
conn.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" _
& "SERVER=192.168.0.1;" _
& " DATABASE=db_name;" _
& "UID=username;PWD=password; OPTION=3"
conn.Open
'create table
conn.Execute "DROP TABLE IF EXISTS my_ado"
conn.E
ODBC加载.
vb中添加一个Adodc的控件.
Public Function conn() As String
conn = "Provider=SQLOLEDB.1;Password=数据库管理密码;Persist Security Info=True;User ID=数据库管理帐号;Initial Catalog=数据库名;Data Source=计算机名"
End Function
Dim rs As New ADODB.Recordset
Dim con As New ADODB.Connection
Dim sql As String
Set con = CreateObject("ADODB.Connection")
con.Open conn
sql = "select * from Admin where username='" & username.Text & "' and password='" & password.Text & "'"
rs.Open sql, con, 1, 1
ODBC加载.
vb中添加一个Adodc的控件.
conn = "Provider=SQLOLEDB.1;Password=数据库管理密码;Persist Security Info=True;User ID=用户名;Initial Catalog=数据库名;Data Source=计算机服务器名称"
Dim rs As New ADODB.Recordset
Dim con As New ADODB.Connection
Dim sql As String
Set con = CreateObject("ADODB.Connection")
con.Open conn
注:不管用什么方法都要有MySql驱动!!!
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/3005/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
评论列表