一般都是用myodbc来连接。首先,在系统中安装 Mysql 的ODBC数据库驱动。如安装稳定版本是3.51.下载地址是:http://dev.mysql.com/downloads/connector/odbc/3.51.html。
下载安装好后。在控制面板-->管理工具-->数据源 (ODBC)中的“驱动程序”页中如果有MySQL ODBC 3.51 Driver就说明驱动已经安装成功,就可以开始写程序了。
下面是我测试时使用的程序,里面有说明就不再介绍了。
方法一:
或:
set conn = server.createobject("adodb.connection") Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;DATABASE=Shops;USER=root;PASSWORD=xxx;"
上面是使用ADODB的连接方法,在默认3306端口是正常。
但在端口改成3333了,就出错。
SERVER=127.0.0.1:3333; 这样也不对,在PHP这样是可以用的
SERVER=127.0.0.1,3333; MSSQL是这样改端口,但在这是错的。
这样可能可以:
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;PORT=3333;DATABASE=Shops;USER=root;PASSWORD=xxx;"
方法二:
另外还可以先在ODBC数据源里新建一个系统DSN,选择 MySQL ODBC 3.51 Driver作为数据源,填入相关的用户名和密码并测试之。相关的ASP连接代码如下:
strconnection="dsn=dbdsn;driver={mysql odbc 3.51 driver};uid=dbuser;password=dbpwd" 'dsn:新建的DSN名称 'uid:用户名 'password:密码 set con = server.createobject("adodb.connection") con.open strconnection
需要注意的问题(mysql4.1及以上版本)
mysql4.1及以上版本对字符集的限定跟之前的版本有很大不同,在进行数据库查询的时候如果不对字符集加以设定,一旦有查询的字段有中文,便很可能出现下面这样的错误:
Microsoft OLE DB Provider for ODBC Drivers 错误 ‘80040e31’
[MySQL][ODBC 3.51 Driver][mysqld-4.1.18]Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation ‘=’
这个时候就需要对asp的查询语句进行一些修改,增加有关的字符集的设定:
"select email from members where username=_gbk '"&username&"' COLLATE gbk_chinese_ci"
代码示例解释如下:如使用下面代码链接
示例1:
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & strIP & ";DATABASE=" & strDBName & ";USER=" & strUserName & ";PASSWORD=" & strPass & ";OPTION=3;"
如果MyODBC版本不同,请自行修改Driver中的字符串
示例2:
序列号 | 标题 |
示例3:
编号 | 标题 |
注意:若使用上面代码出现如下错误
错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E21) ODBC 驱动程序不支持所需的属性。
则可能是MySql中不支持select top 10 *……,不支持top 10的语法
文章来源于lcx.cc:ASP 连接 MySQL 数据库两种方法
相关推荐: 【Html】Html 在网页,页面中背景图片居中显示
Html 在网页、页面中背景图片居中显示: 简单的css代码,不解释了。。。 Html 在网页、页面中背景图片居中显示,Html 在网页中背景图片居中显示,Html 在页面中背景图片居中显示,Html 网页背景图片居中显示,Html 页面背景图片居中显…
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论