• 建立数据库连接(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方法关闭连接,连接对象才能返回连接池。

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

  • 相关阅读:
    抽象方法真的不能实例化么?
    java中静态属性和和静态方法的继承问题 以及多态的实质
    Java中数据类型转换问题
    Java中反射机制和Class.forName、实例对象.class(属性)、实例对象getClass()的区别
    java的static块执行时机
    代理服务器:正向代理和反向代理
    阿里巴巴的一些面试题(无答案)
    pl/sql实现打印九九乘法表
    java中的标记接口(标签接口)
    spring boot中log4j冲突问题和解决办法
  • 原文地址:https://www.cnblogs.com/shenzhoulong/p/1735974.html
Copyright © 2020-2023  润新知