Connection对象也称为数据库连接对象,Connection对象的功能是负责对数据源的连接。所有Connection对象的基类都是DbConnection类。
以下是几种常见数据库对应的 .NET Framework 数据提供程序中的 Connection 对象:
Connection 对象的使用通常遵循以下步骤:
ConnectionString
属性,用于设置这些信息。Open
方法来建立到数据库的连接。Close
方法来关闭连接。为了更好的资源管理,建议使用 using
语句来确保连接正确关闭。数据源(Data Source)+数据库名称(Initial Catalog)+用户名(User ID)+密码(Password)
SQL Server连接字符串
C#Data Source=.;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword; Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;Trusted_Connection=False;
可信连接
C#Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI; Server=myServerAddress;Database=myDatabase;Trusted_Connection=True;
Access连接字符串
C#Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\myDatabase.mdb;User Id=admin;Password=;
MySQL连接字符串
C#Server=myServerAddress;Database=myDatabase;Uid=myUsername;Pwd=myPassword;
Oracle连接字符串
C#Data Source=TORCL;User Id=myUsername;Password=myPassword;
调用Connection对象的Open方法或Close方法可以打开或关闭数据库连接,而且必须在设置好数据库连接字符串后才能调用Open方法,否则Connection.对象不知道要与哪一个数据库建立连接。
Connection对象有两个重要属性:
Connection对象有两个重要方法:
C#using (SqlConnection conn1 = new SqlConnection("连接字符串"))
{
conn.Open();
}
App.config
XML <appSettings>
<add key="DataConnString" value="Server=127.0.0.1;Database=db;Max Pool Size=50;Min Pool Size=5;Uid=sa;Pwd=123"/>
</appSettings>
C# SqlConnection conn = new SqlConnection();
conn.ConnectionString = System.Configuration.ConfigurationManager.AppSettings["DataConnString"].ToString();
conn.Open();
Console.WriteLine(conn.State);
conn.Close();
注意:打开一个数据库连接,一定用完关闭
完整一段
C# string ConnectionString = System.Configuration.ConfigurationManager.AppSettings["DataConnString"].ToString();
using (SqlConnection conn = new SqlConnection(ConnectionString))
{
conn.Open();
//do something
}
SqlConnection conn = new SqlConnection();
string ConnectionString = System.Configuration.ConfigurationManager.AppSettings["DataConnString"].ToString();
try
{
conn.ConnectionString = ConnectionString;
conn.Open();
}
catch
{
}
finally
{
conn.Close();
}
属性
AccessToken | 获取或设置用于连接的访问令牌。 |
CanCreateBatch | 获取一个值,该值指示此 DbConnection 是否支持 DbBatch 类。 (继承自 DbConnection) |
ClientConnectionId | 最近连接尝试连接的 ID,无论该尝试是成功还是失败。 |
ConnectionString | 获取或设置用于打开 SQL Server 数据库的字符串。 |
ConnectionTimeout | 获取在尝试建立连接时终止尝试并生成错误之前所等待的时间(以秒为单位)。 |
Credential | 获取或设置此连接的 SqlCredential 对象。 |
Database | 获取当前数据库的名称或打开连接后要使用的数据库的名称。 |
DataSource | 获取要连接的 SQL Server 的实例的名称。 |
DbProviderFactory | 获取此 DbProviderFactory 的 DbConnection。 (继承自 DbConnection) |
PacketSize | 获取用于与 SQL Server 的实例进行通信的网络数据包的大小(以字节为单位)。 |
ServerVersion | 获取一个字符串,其中包含客户端所连接到的 SQL Server 的实例的版本。 |
State | 最近在连接上执行网络操作时表示 SqlConnection 的状态。 |
StatisticsEnabled | 如果设置为 true ,则对当前连接启用统计信息收集。 |
WorkstationId | 获取一个标识数据库客户端的字符串。 |
方法
using
语句可以自动管理连接的关闭。本文作者:技术老小子
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!