文章目录
1、Connection对象简介
在ADO.NET对象模型中,Connection对象代表了与数据源的连接,当连接到数据源时,首先选择一个.NET数据提供程序,数据提供程序包含一些操作类,使用这些类可以连接不同的数据源,以下四种数据提供程序的连接对象。
- SQL Server .NET 数据提供程序的
SqlConnection对象 - OLE DB .NET 数据提供程序的
OleDbConnection对象 - ODBC .NET 数据提供程序的
OdbcConnection对象 - Oracle .NET 数据提供程序的
OracleConnection对象
2、四大连接对象的数据源连接范围
数据存储包含以下格式:数据库、XML文件、文本文件、Access、Excel等,对于这些多样化的数据源为了能够进行统一的管理,Connection对象提供了四个连接数据的对象,每个对象分别实现不同的数据源管理:
SqlConnection对象:是专为连接到SQL Server数据库而设计的OleDbConnection对象:通过指定的数据源支持组件可以连接到任何数据库或文件OdbcConnection对象:支持任何在Windows中配置好的ODBC连接,包括SQL Server、Sybase、Oracle数据库等OracleConnection对象:是专为连接到Oracle数据库而设计的
3、SqlConnection连接SQL Server数据库——连接数据库并读取连接状态
在对数据库进行任何操作钱,都要先建立与数据库的连接。在使用SqlConnection类之前必须对其进行实例化,其语法格式如下:
Sql Server身份验证语句:
SqlConnection con = new SqlConnection("Server=服务器名;User Id=用户;Pwd=密码;DataBase=数据库名称");
Windows身份验证语句:
SqlConnection con = new SqlConnection("Server=服务器名;DataBse=数据库名称;Trusted_Connection=SSPI");
SqlConnection对象的常用属性及说明如下表所示:
| 属性 | 说明 |
|---|---|
ConnectionString | 获取或设置用于打开SQL Server数据库的字符串 |
ConnectionTimeout | 获取在尝试建立连接时终止尝试并生成错误之前所等待的时间 |
State | 指示SqlConnection的连接状态:关闭、打开、正在连接、正在执行命令、已中断 |
SqlConnection对象常用方法及说明,如下表所示:
| 方法 | 说明 |
|---|---|
Open | 打开数据库连接,所打开的数据库由ConnectionString属性或构造方法中配置的连接字符串绝定 |
Close | 关闭数据库的连接,关闭后可以再次执行Open方法来打开数据库连接 |
Dispose | 释放连接资源,释放之后不可再执行Open方法 |
CreateCommand | 创建并返回一个与SqlConnection关联的SqlCommand对象 |
通过一个例子来展示一下SqlConnection是怎么使用的,这个例子就是——连接数据库并读取连接状态
首先创建一个网站,新建一个网页作为起始页。
在连接数据库之前,需要引用命名空间System.Data.SqlClient
在起始页.aspx,cs中写代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient; //引入的命名空间
namespace SqlConnection连接数据库并读取连接状态
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string res = ConnectToSql();
Response.Write(res);
}
private string ConnectToSql()
{
string res = "";
string SqlStr = "Server=DESKTOP-9FCSCD4;DataBase=ReportServer;Trusted_Connection=SSPI"; //创建与数据库连接的字符串
SqlConnection con = new SqlConnection(SqlStr);
//拼接打开前的状态说明
res += " 准备打开,状态:" + con.State.ToString() + "<br>";
con.Open();
res += " 已经打开,状态:" + con.State.ToString() + "<br>";
con.Close();
return res;
}
}
}
大功告成!效果如下:

4、OleDbConnection对象连接OLE DE数据源——连接EXCEL并读取状态
OLE DB数据源包含具有OLE DB驱动程序的任何数据源,如Sql Server、Access、Excel、Oracle等。OLE DB数据源连接字符串必须提供Provide属性及其值。
在使用该对象前必须将其实例化,语法如下:
OleDbConnection myConn = new OleDbConnection("Provide=提供者";Data Source = 文件路径");
下表是OleDbConnection对象常用的属性及说明:
| 属性 | 说明 |
|---|---|
ConnectionString | 获取或设置打开数据源的字符串 |
Provider | 操作数据源数据的组件程序 |
ConnectionTimeout | 获取在尝试建立连接时终止尝试并生成错误之前所等待的时间 |
State | 指示当前连接数据源的状态:关闭、打开、正在连接、正在执行命令和已中断 |
下表是OleDbConnection对象常用的方法及说明:
| 方法 | 说明 |
|---|---|
Open | 打开数据源连接,所打开的数据源由ConnectionString属性或构造方法中配置的字符串连接决定 |
Close | 关闭数据源连接,关闭后可以再次使用Open打开数据源 |
DisPose | 释放连接资源,释放后不可以再使用Open方法 |
CreateCommand | 创建并返回一个与该OleDbConnection关联的OleDbCommand对象 |
例子:连接EXCEL并读取连接状态
首先创建一个网站,并创建一个起始页。
使用OleDb连接数据源需要引用命名空间System.Data.OleDb
然后写代码:
using System;
using System.Collections.Generic;
using System.Data.OleDb;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace OleDbConnection连接EXCEL
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string res = ConnectToExcel(Server.MapPath("Excel/Test.xlsx"));
Response.Write(res);
}
private string ConnectToExcel(string ExcelPath)
{
string res = "";
string ConnectStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
ExcelPath + ";Extended Properties=\"Excel 12.0;HDR=NO;IMEX=0\"";
OleDbConnection con = new OleDbConnection(ConnectStr);
res += "准备打开,状态" + con.State.ToString() + "<br>";
con.Open();
res += "已经打开,状态" + con.State.ToString() + "<br>";
con.Close();
con.Dispose(); //释放
return res;
}
}
}

本文深入探讨ADO.NET中Connection对象的应用,涵盖SqlConnection与OleDbConnection两大核心对象,详解连接SQL Server与Excel数据源的过程与状态读取。通过实例演示,帮助读者掌握不同数据源的连接技巧。
1986

被折叠的 条评论
为什么被折叠?



