ADO 跨数据库_GS
简介
ADO(ActiveX Data Objects)是一种用于访问和操作数据库的COM组件,通过使用ADO,我们可以在不同的数据库之间进行数据交互,实现跨数据库的操作,本文将介绍如何使用ADO实现跨数据库操作,并以SQL Server和MySQL为例进行演示。
环境准备
1、安装SQL Server和MySQL数据库
2、安装对应数据库的ODBC驱动
3、安装ADO相关库
连接数据库
SQL Server
Dim conn As New ADODB.Connection conn.Open "Provider=SQLOLEDB;Data Source=服务器名;Initial Catalog=数据库名;User ID=用户名;Password=密码;"
MySQL
Dim conn As New ADODB.Connection conn.Open "Driver={MySQL ODBC 5.3 Unicode Driver};Server=服务器名;Database=数据库名;User=用户名;Password=密码;Option=3;"
查询数据
SQL Server
Dim rs As New ADODB.Recordset rs.Open "SELECT * FROM 表名", conn While Not rs.EOF Debug.Print rs.Fields("字段名").Value rs.MoveNext Wend rs.Close
MySQL
Dim rs As New ADODB.Recordset rs.Open "SELECT * FROM 表名", conn While Not rs.EOF Debug.Print rs.Fields("字段名").Value rs.MoveNext Wend rs.Close
插入数据
SQL Server
Dim cmd As New ADODB.Command With cmd .ActiveConnection = conn .CommandText = "INSERT INTO 表名 (字段1, 字段2) VALUES (?, ?)" .Parameters.Append .CreateParameter("@字段1", adVarChar, adParamInput, 50, "值1") .Parameters.Append .CreateParameter("@字段2", adInteger, adParamInput, , 值2) .Execute End With
MySQL
Dim cmd As New ADODB.Command With cmd .ActiveConnection = conn .CommandText = "INSERT INTO 表名 (字段1, 字段2) VALUES (?, ?)" .Parameters.Append .CreateParameter("@字段1", adVarChar, adParamInput, 50, "值1") .Parameters.Append .CreateParameter("@字段2", adInteger, adParamInput, , 值2) .Execute End With
更新数据
SQL Server
Dim cmd As New ADODB.Command With cmd .ActiveConnection = conn .CommandText = "UPDATE 表名 SET 字段1=? WHERE 字段2=?" .Parameters.Append .CreateParameter("@字段1", adVarChar, adParamInput, 50, "新值1") .Parameters.Append .CreateParameter("@字段2", adInteger, adParamInput, , 值2) .Execute End With
MySQL
Dim cmd As New ADODB.Command With cmd .ActiveConnection = conn .CommandText = "UPDATE 表名 SET 字段1=? WHERE 字段2=?" .Parameters.Append .CreateParameter("@字段1", adVarChar, adParamInput, 50, "新值1") .Parameters.Append .CreateParameter("@字段2", adInteger, adParamInput, , 值2) .Execute End With
删除数据
SQL Server
Dim cmd As New ADODB.Command With cmd .ActiveConnection = conn .CommandText = "DELETE FROM 表名 WHERE 字段1=?" .Parameters.Append .CreateParameter("@字段1", adVarChar, adParamInput, 50, "值1") .Execute End With
MySQL
Dim cmd As New ADODB.Command With cmd .ActiveConnection = conn .CommandText = "DELETE FROM 表名 WHERE 字段1=?" .Parameters.Append .CreateParameter("@字段1", adVarChar, adParamInput, 50, "值1") .Execute End With
根据您的要求,这里为您提供一个关于“ADO 跨数据库_GS”的简易介绍,请注意,由于这里仅提供文字格式,以下内容可能需要您自行调整格式以适应实际的介绍布局。
数据库类型 数据源名称 (DSN) 示例 ADO 连接字符串示例 备注
SQL Server | SQLServerDB | Provider=SQLOLEDB;Data Source=SQLServerDB;Initial Catalog=DatabaseName;User ID=Username;Password=Password; |
需要安装 SQL Server 的 OLE DB 提供程序 |
Oracle | OracleDB | Provider=OraOLEDB.Oracle;Data Source=OracleDB;User ID=Username;Password=Password; |
需要安装 Oracle 的 OLE DB 提供程序 |
MySQL | MySQLDB | Provider=MyOLEDB;Data Source=MySQLDB;User ID=Username;Password=Password; |
需要使用 MySQL OLE DB 提供程序,如 MyODBC |
Access | AccessDB | Provider=Microsoft.Jet.OLEDB.4.0;Data Source=AccessDB.mdb; |
对于 Access 2000-2003 |
Access 2007+ | Access2007 | Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Access2007.accdb; |
对于 Access 2007 及以上版本 |
PostgreSQL | PostgreSQLDB | Provider=MSDASQL;Driver={PostgreSQL Unicode};Server=PostgreSQL
|
评论留言