以SQLServer为例子进行说明,包含以下内容:

  如何进行连接

  如何关闭连接

  池的问题

  连接状态

1.如何进行连接

// 创建连接实例
DbConnection myConnection = new SqlConnection();
// 设置连接字符串
myConnection.ConnectionString = "user id=userName;password=pass;initial catalog=northwind;data source=mySQLServer;Connect Timeout=30";
// 打开连接
myConnection.Open();

2.如何关闭连接

// 创建连接实例
DbConnection myConnection = new SqlConnection();
// 设置连接字符串
myConnection.ConnectionString = "user id=userName;password=pass;initial catalog=northwind;data source=mySQLServer;Connect Timeout=30";
// 打开连接
myConnection.Open();
// 关闭连接,用Dispose也可以实现关闭;连接实例被垃圾回收器回收的时候不会自动释放数据库连接
myConnection.Close();

3.池的问题

  当连接打开时,将根据一种精确的匹配算法来创建连接池,该算法会使连接池与连接中的字符串相关联。
  每个连接池都与一个不同的连接字符串相关联。当新连接打开时,如果连接字符串不精确匹配现有池,则将创建一个新池。

  在以下示例中,将创建三个新的 SqlConnection 对象,但只需要使用两个连接池来管理这些对象。
  请注意,第一个和第二个连接字符串的差异在于为 Initial Catalog 分配的值

SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Integrated Security=SSPI;Initial Catalog=northwind";
conn.Open();
// Pool A is created.

SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Integrated Security=SSPI;Initial Catalog=pubs";
conn.Open();
// Pool B is created because the connection Strings differ.

SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Integrated Security=SSPI;Initial Catalog=northwind";
conn.Open();
// The connection String matches pool A.

 

  以上是连接字符串中与池相关的设置。

  关于池的概念这里不多说

4.连接状态

  通过连接实例的State属性,可以观察数据库连接的状态,共有如下种状态

System.Data.ConnectionState.Closed
            System.Data.ConnectionState.Open
            System.Data.ConnectionState.Connecting
            System.Data.ConnectionState.Executing
            System.Data.ConnectionState.Fetching
            System.Data.ConnectionState.Broken

  StateChange事件在 Connection 的状态出现更改时发生。StateChange 事件接收 StateChangeEventArgs,它们使您能够使用 OriginalState 和 CurrentState 属性来确定 Connection 状态中的更改。OriginalState 属性它指示 Connection 在更改前的状态。CurrentState 它指示 Connection 在更改后的状态。

      myConnection.StateChange += new StateChangeEventHandler(OnStateChange);

protected static void OnStateChange(object sender, StateChangeEventArgs args)
{
Console.WriteLine("The current Connection state has changed from {0} to {1}.",
args.OriginalState, args.CurrentState);
}

转载于:https://www.cnblogs.com/hutou/archive/2011/02/24/1963691.html

无废话ADO.NET 第二章 关于连接相关推荐

  1. 无废话ADO.NET 第三章 进行查询

    成功建立数据库连接后,可以通过数据库连接进行对数据库的操作.本章讲述对数据库的查询操作.有如下内容: 命令Command对象 从数据库获取单值 用DataReader查询 从数据库中获取blob值 使 ...

  2. 【笔记】《计算机网络系统方法》(by Larry L.Peterson)第二章 开始连接

    [问题]如何将两个节点连接起来? 如何将多个节点连接到ISP云中? 需要考虑到的问题: Mechanical Functional Electrical Procedural (本章就3.4进行讨论) ...

  3. 【树莓派Zero入门】-第二章:连接Wifi,获取IP,远程连接,固定IP,解锁root用户

    1.连接WiFi 我没有屏幕,没插网线,通过编辑文件,然后放进SD卡中. 在前期准备完成后,不要急着拔下SD卡,继续插在我们的电脑上,因为这里还需要编辑(新烧录的系统,boot下的文件) 1.将烧录好 ...

  4. 连接计算机和网络传输介质,计算机网络建设施工与管理第二章 网络传输介质与连接头.ppt...

    计算机网络建设施工与管理第二章 网络传输介质与连接头 第二章 网络传输介质与连接头 双绞线 普通电话线一般是两根线相互缠绕在一起,形成所谓的双绞线(Twisted-Pair),这种双绞结构最主要的优点 ...

  5. OS知识点汇总(考研用)——第二章:进程管理(下)

    OS知识点汇总(考研用)--第二章:进程管理(下)  本文参考于<2021年操作系统考研复习指导>(王道考研),<计算机操作系统教程> 思维导图: 文章目录 OS知识点汇总(考 ...

  6. 星际争霸官方小说: 刀锋女王-----第二章

    第2章 两周之后,雷纳站在舰桥之上,俯视着这颗被他命名为查尔的行星.甚至在霍尼尔将 休伯利安驶进高空轨道之前,他就能看到这个纯灰色的星球上冒出的数处烟柱,总有一些橘黄或金色的闪光作为它们出现的先兆.初 ...

  7. 王道考研 计算机网络笔记 第二章:物理层

    本文基于2019 王道考研 计算机网络: 2019 王道考研 计算机网络 个人笔记总结 第一章:王道考研 计算机网络笔记 第一章:概述&计算机网络体系结构 后续章节将陆续更新- 第二章 一.物 ...

  8. ppk on JavaScript第二章:背景(完结篇)

    无障碍规则 尽管无法预见可能损害一个有脚本网站的可用性的所有情形,但我已经总结出一些可以帮助您在基础上不犯错的规则.不要把它们当作JavaScript和无障碍的终极规则,这只是能防止一些常见低级错误的 ...

  9. python语言程序设计2019版第二章课后答案-python语言程序设计基础(嵩天)第二章课后习题...

    **第二学期第一周学习总结 一. 本周学习内容总结 一维数组,了解了一维数组的定义(定义一个数组,需要明确数组变量名,数组元素的类型和数组大小,即数组中元素的数量) 一维数组定义的一般形式为:类型名, ...

最新文章

  1. visual code 在标签页打开_VSCode 不在新标签页打开文件如何解决?
  2. python用什么开发平台_一般来说,python平台开发有什么作用?
  3. 聚焦国际农民丰收节贸易会-张桃林:农业谋定开放新格局
  4. 医学论文摘要撰写的四要素以及注意事项
  5. python的self
  6. JSON学习笔记(五)- JSON.stringify()
  7. logstash 中multiline插件的用法
  8. cent os 查看服务器信息
  9. opencv官网下不了了,分享各版本
  10. 只要还在路上前行着的,那都是一个个闪闪发光惹人爱的人啊
  11. python练手经典100例项目-Python 的练手项目有哪些值得推荐?
  12. blp和biba属于哪种访问控制_CISP官方信息安全技术章节练习二
  13. Git 核心概念:工作区与暂缓区(添加提交及查看状态充分体现)
  14. FOTA与OTA区别在哪?
  15. 【视觉定位UV】日志分析之Mark点详解
  16. 思想“一念之间”,读书笔记
  17. 实习 week(三)
  18. 大班线描机器人_儿童线描画《有趣的机器人》绘画教程
  19. kubernets常用命令统计
  20. Android 启动页面三秒后跳转主页面 多种方法 及动画

热门文章

  1. windows密钥连接linux,windows使用密钥登录linux
  2. 客户机系统已禁用cpu_Metricbeat System process metricset系统进程监控参数详情
  3. Serverless 技术选型
  4. linux 系统时间 硬件时间,linux 设置系统时间和硬件时间
  5. textarea 转换 html,textarea html标签转换为纯文本
  6. linux 动态解析,Linux 动态函式库解析[转]Linux -电脑资料
  7. cv2 orb 图像拼接_OpenCV 实现多张图像拼接
  8. 双目立体视觉建立深度图_双目立体视觉测量系统应用
  9. STM32F103ZET6开发板PB3/4,PA13/14/15等I/O口的特殊配置
  10. 【生成模型】解读显式生成模型之完全可见置信网络FVBN