一、sqlConnection类简介
语法: public sealed class sqlConnection : DbConnection,ICloneable 表示 与sql Server 数据库的连接。 此类不能被继承。 命名空间: System.Data.SqlClient程序集: System.Data(在 System.Data.dll 中) sqlConnection 对象表示与 sql Server 数据源的一个唯一的会话。 在客户端/服务器数据库系统中,它等效于一个到服务器的网络连接。 sqlConnection 与SqlDataAdapter 和SqlCommand 一起使用,以便在连接到 Microsoft sql Server 数据库时提高性能。 当创建 sqlConnection 的实例时,所有属性都设置为它们的初始值,如下表所示。只能使用 ConnectionString 属性更改这些属性的值 。
ConnectionString | 空字符串 ("") |
ConnectionTimeout | 15 |
Database | 空字符串 ("") |
DataSource | 空字符串 ("") |
如果 sqlConnection 超出范围,则不会将其关闭。 因此,必须通过调用Close或dispose显式关闭该连接。 Close 和 dispose 的功能等效。若要确保连接始终关闭,请在 using 块内部打开连接,如下面的代码段所示。 这样可确保在代码退出代码块时自动关闭连接。
例如:
如果执行 SqlCommand 的方法生成SqlException,那么当严重级别小于等于 19 时,sqlConnection 将仍保持打开状态。 当严重级别大于等于 20 时,服务器通常会关闭 sqlConnection。 但是,用户可以重新打开连接并继续 *** 作。 下面的示例创建一个 SqlCommand 和一个 sqlConnection。 sqlConnection 打开,并设置为SqlCommand 的Connection。 该示例然后调用ExecuteNonQuery。 为了完成此任务,将为ExecuteNonQuery 传递一个连接字符串和一个查询字符串,后者是一个 Transact-sql INSERT 语句。 当代码使用块退出时,连接自动关闭。using (sqlConnection connection = new sqlConnection(connectionString))
{
connection.open();
// Do work here; connection closed on following line.
}
private static voID CreateCommand(string queryString,
string connectionString)
{
using (sqlConnection connection = new sqlConnection(
connectionString))
{
sqlCommand command = new sqlCommand(queryString,connection);
command.Connection.open();
command.ExecuteNonquery();
}
}
二、两种构造函数
(1)public sqlConnection()
(2)public sqlConnection(string connectionString)
三、常用属性
1、获取当前连接的状态-------State
[ browsableAttribute(false)]
public overrIDe ConnectionState State { get; }
ConnectionState的枚举成员
Closed | 连接处于关闭状态。 |
Open | 连接处于打开状态。 |
Connecting | 连接对象正在与数据源连接。 (该值是为此产品的未来版本保留的。) |
Executing | 连接对象正在执行命令。 (该值是为此产品的未来版本保留的。) |
Fetching | 连接对象正在检索数据。 (该值是为此产品的未来版本保留的。) |
broken | 与数据源的连接中断。 只有在连接打开之后才可能发生这种情况。 可以关闭处于这种状态的连接,然后重新打开。 (该值是为此产品的未来版本保留的。) |
2、获取或设置用于打开 sql Server 数据库的字符串。-----------ConnectionString
[SettingsBindableAttribute(true)]
public overrIDe string ConnectionString { get; set; }
连接字符串,其中包含源数据库名称和建立初始连接所需的其他参数
如果“Persist Security Info”值设置为 false(默认值),则返回的连接字符串与用户设置的 ConnectionString 相同但去除了安全信息。 除非将“Persist Security Info”设置为 true,否则,sql Server .NET Framework 数据提供程序将不会保持,也不会返回连接字符串中的密码。
只有在连接关闭时才能设置 ConnectionString 属性
3、获取要连接的 sql Server 实例的名称。---------DataSource
[browsableAttribute(true)]
public overrIDe string DataSource { get; }
如果 SqlConnection 的连接字符串为“context connection=true”,DataSource 属性将返回 null。
4、获取当前数据库的名称或连接打开后要使用的数据库的名称。----DateBase
public overrIDe string Database { get; }
Database 属性会动态更新。 如果使用 Transact-sql 语句或 ChangeDatabase 方法更改当前数据库,就会发送信息性消息并自动更新此属性。
5、获取等待连接打开的时间(以秒为单位)。-----------ConnectionTimeOut
public overrIDe int ConnectionTimeout { get; }
四、常用方法
1、打开与数据库的连接---------Open
public overrIDe voID open()
2、关闭与数据库的连接--------Close
public overrIDe voID Close()
此方法是关闭任何已打开连接的首选方法。
应用程序可以多次调用 Close。 不会生成任何异常。
3、public voID dispose ()
释放由 Component 使用的所有资源
4、关闭连接的 Close()方法和dispose()的区别
Close方法用于关闭一个连接,而dispose方法不仅关闭一个连接,而且还清理连接所占用的资源。当使用Close方法关闭连接后,可以再调用Open方法打开连接。而若用dispose方法关闭连接则不可以再次直接调用Open方法打开连接,必须初始化连接之后再打开即重新建立sqlConnection对象。
5、创建并返回一个与 @L_419_18@ 关联的 SqlCommand 对象--------CreateCommand
public sqlCommand CreateCommand()
总结以上是内存溢出为你收集整理的SqlConnection类--------与SqlServer建立连接全部内容,希望文章能够帮你解决SqlConnection类--------与SqlServer建立连接所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)