建立数据库连接(19)

简介:
在对数据库操作之前我们需要对数据库建立链接,我们使用connection对象建立链接,根据不同的连接方法,选择对应的数据提供程序。我们一 SQL数据库为例,首先要添加命名空间system.data.sqlclient命名空间,通过sqlconnection对象来建立打开数据库,具体 步骤如下:
  1. 定义连接字符串
如果使用集成安全性连接本地服务器中心中的pubs数据 库,可以这样定义连接字符串:
string ConnectionString="Server=localhost;Database=pubs;integrated security=SSPI;";
如果使用数据库账号的安全性连接本地服务器pubs数据库,可以这样定义连接字符串:
string ConnectionString="Server=localhost;Database=pubs;user id=da; password=;";

声明完连接字符串后我们一般还会使用连接池,连接池会更好的解决数据库访问过程中数据库资源的开销问题,比如启用连接池,设置连接池最小的连 接数位4,最大连接数为30,连接池最大连接数默认为100,最小默认值为0,代码如下:
string ConnectionString=" Server=localhost;Database=pubs;user id=da; password=;Pool=true;Min Pool Size=4; Max Size=30";

    2.创建连接对象
定义好连接字符串后,就可以调用构造函数创建连接对象代码:
SqlConnection conn=new SqlConnection(ConnectionString);

   3.打开连接
调用连接对象conn的Open方法,以打开连接:
conn.open();

注意:对于连接池而言,要调用连接对象的Close或Dispose方法关闭连接,连接对象才能返回连接池。
连接池:连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。当一个连接被其他线程使用时,其他线程不能对此连接 进行操作,线程使用完连接后必须返回连接池,才能被其他线程所使用。可以把连接池理解为一个池塘,如果一个人想从池塘把水放到另一个容器中,就需要勺子 (当然是大勺子)把水挪动到容器中,连接就像是勺子,可以让每个线程使用,但是只能一个人(线程)使用,当连接闲置时必须放回连接池(池塘)中才能被他人 (其他线程)使用。


本文转自shenzhoulong  51CTO博客,原文链接:http://blog.51cto.com/shenzhoulong/315854,如需转载请自行联系原作者
相关文章
|
编译器 Go 开发工具
常见问题之Golang——cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%错误
本文主要是对我日常在使用golang时遇到的一些问题与解决方式进行的汇总,在此提供给大家便于排查一些遇到的问题,其中有更好的解决方案可在评论区留言。
1545 0
常见问题之Golang——cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%错误
|
运维 监控 安全
【ELK入门】Elastic中文社区运维监控实战之架构篇
阿里云MVP曾勇撰写的《ELK运维监控入门实战》系列,以Elasticsearch中文社区网站运维监控体系搭建作为案例,讲解了ELK监控系统的相关原理和技术实现,可作为对ELK感兴趣的同学的入门级文章。本篇作为第一篇,介绍了项目背景和技术架构。
6916 0
|
数据采集 传感器 算法
ENVI:如何对Landsat8影像进行辐射校正?
ENVI:如何对Landsat8影像进行辐射校正?
913 0
|
机器学习/深度学习 数据采集 数据可视化
数据分析案例-基于随机森林模型对信用卡欺诈检测
数据分析案例-基于随机森林模型对信用卡欺诈检测
673 0
数据分析案例-基于随机森林模型对信用卡欺诈检测
|
芯片 内存技术
嵌入式学习:Cortex-M系列芯片介绍
以意法半导体芯片为例子:Cortex-M0:主频在48M,一般用于低功耗;Cortex-M3:主频为72M,是现在市面上最为流行的芯片之一,一般用于工业等部分控制功能; Comtex-M4:主频为168M,一般用于电源管理控制
嵌入式学习:Cortex-M系列芯片介绍
|
机器学习/深度学习
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型(三)
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型
1543 0
|
开发框架 小程序 前端开发
来接私活吧?玩转小程序开发之丝滑拆红包【附完整代码】
来接私活吧?玩转小程序开发之丝滑拆红包【附完整代码】
504 0
来接私活吧?玩转小程序开发之丝滑拆红包【附完整代码】
|
数据采集 存储 算法
央视网的融媒体数据中台实践
作为中央电视台新媒体平台,央视网在不断升级建设“一网(中央重点新闻网站)+一端(移动客户端)+新媒体集成播控平台(IPTV、手机电视、互联网电视)+市场端口连接”的全新传播格局,打造“无处不在”新入口的同时也深刻认识到,需要让大数据成为驱动整个企业发展的核心动能。
3561 0
央视网的融媒体数据中台实践
|
网络协议 Java Linux
在阿里云服务器如何一步步部署java项目
一、连接阿里云服务器    根据阿里云控制台设置的远程连接密码,可以通过SecureCRT远程连接阿里云服务器。 二、安装jdk1、上传jdk压缩包     连接好后Alt+p 快捷键打开文件上传窗口,把需要安装的jdk压缩包拖进去。
3324 0
|
消息中间件 大数据 Apache
解锁事务消息,发力大数据流计算,Apache RocketMQ 开发者再聚深圳,干货满满获开源爱好者好评
7月29日,阿里中间件(Aliware)联合阿里巴巴技术协会,在深圳举办了Apache RocketMQ毕业后的第二次线下Meetup。当天现场的700名和线上三个直播平台的开源技术爱好者一起,与活动现场的Committer及Contributor就RocketMQ的CI/CD、最终一致性事务、金融领域的最佳实践、流计算生态、以及开源社区生态建设等话题展开深入探讨。本次活动不仅促进了开源社区的发展壮大,也推进了消息技术及规范的进一步发展。据统计,报名活动页面浏览量58000次,报名人数达2034人,线上3大平台直播,总PV超过17000,UV接近7500。
3971 0
解锁事务消息,发力大数据流计算,Apache RocketMQ 开发者再聚深圳,干货满满获开源爱好者好评