Ado.net1

一.Ado.net的核心

  Ado.net的核心为两组重要的类,一个负责处理软件内部的实际数据(DataSet),另一个负责与外部数据系统通信(DataProvider)

   DataSet:包含一个或多个DataTable对象的集合,这些对象有数据行和数据列以及主键,外键,约束有关DataTable对象中数据的关系信息组成

   DataProvider(.NET数据提供程序):包含四个重要的对象

    Connection对象提供与数据源的连接.

    Command对象与操作数据库的数据库命令相关

    DataReader对象从数据源中提供快速的,只读的数据流.

    DataAdapter对象,使用Command对象在数据源中执行SQL命令,以便将数据加载到DataSet中,是DataSet中的数据与数据源中的数据保持一致

二.连接字符串

  连接字符串,就是这样一组被格式化的键值对:它告诉ADO.NET数据源在哪里,需要什么样的数据格式,提供什么样的访问信任级别以及其他任何包括连接的相关信息

  连接字符串中的几个常见内容:

    DataSource:需要连接的服务器,

    Initial Catalog:默认连接的数据库名称.

    User Id:数据库所有者用户名

    Password:密码

  构造连接字符串的两种方法:

    普通的:

      string Constr = "DataSource="localhost";Initial Catalog="User";User Id="sa";password=123"

    使用DbConnectionStringBuilder类来新建字符串:

1 SqlClient.SqlConnectionStringBuilder builder =
2 new SqlClient.SqlConnectionStringBuilder();
3 builder.DataSource = @"(local)\SQLEXPRESS";
4 builder.InitialCatalog = "myDataBase";
5 builder.IntegratedSecurity = true

  将连接字符串保存在配置文件中:

      在我们实际开发中,我们一般不会把连接字符串直接写在代码中,而是存储在配置文件里。把连接字符串写死在代码中,不便于维护,每次修改字符串时,还得重新编译代码。以ASP.NET应用程序为例,我们一般把连接字符串写在web.config配置文件的<connectionstrings />节点。例如:

1 <connectionStrings>
2 <add name="connStr" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=myDataBase;Integrated Security=SSPI" />
3 </connectionStrings>

      因此,我们只需要在程序中添加相应代码来获取配置文件中的值,比如:

string connStr = ConfigurationManager.ConnectionStrings["connStr"].ToString();

三.理解Connection对象

  如果把数据源比作一扇大门,连接字符串就是打开这扇大门的钥匙,Connection对象就是拿着这把钥匙打开大门的人 

  对于ADO.NET而言,不同的数据源,都对应着不同的Connection对象。具体Connection对象如下表:

名称 命名空间 描述
SqlConnection System.Data.SqlClient 表示与SQL Server的连接对象  
OleDbConnection System.Data.OleDb 表示与OleDb数据源的连接对象                   
OdbcConnection System.Data.Odbc 表示与ODBC数据源的连接对象                                                                         
OracleConnection System.Data.OracleClient 表示与Orale数据库的连接对象

  必须掌握的几个方法:

    open方法:使用连接字符串配置好的信息打开相应的数据源

    Dispose方法:释放由Component所占用的资源

    Close方法:关闭连接

  必须掌握的几个属性:

    Database:在连接之前获取连接字符串中指定的连接数据库,在连接之后获取连接的数据库

    DataServer:获取连接的服务器

    state:获取描述连接状态的字符串

    ConnectionString:获取或设置用于打开连接的字符串

    ConnectionTimeOut:获取终止尝试连接之前所等待的时间

    ConnectionState:枚举类型,包括以下成员:

      Closed:连接出于关闭状态

      Open:连接出于打开状态

      Executing:连接正在执行命令

      broken:连接中断

      Connecting:正在进行连接

      Fetching:连接对象正在检索数据

  连接Sql Server数据库的实例:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Data;
 4 using System.Data.SqlClient;
 5 using System.Linq;
 6 using System.Text;
 7 using System.Threading.Tasks;
 8 
 9 namespace ConsoleApp5
10 {
11     class Program
12     {
13         static void Main(string[] args)
14         {
15             //构造连接字符串
16             SqlConnectionStringBuilder connStr = new SqlConnectionStringBuilder();
17             connStr.DataSource = "DESKTOP-0MBGCKA\\SQL2016";
18             connStr.InitialCatalog = "stu";
19             connStr.IntegratedSecurity = true;
20 
21             SqlConnection conn = new SqlConnection();//创建连接Sql Server 的Connection对象
22             conn.ConnectionString = connStr.ConnectionString;//设置连接字符串
23 
24             conn.Open();//打开连接
25 
26             if (conn.State == ConnectionState.Open)
27             {
28                 Console.WriteLine("连接成功,连接已经打开");
29             }
30             conn.Close();//关闭连接
31             conn.Dispose();//释放资源
32             if (conn.State == ConnectionState.Closed)
33             {
34                 Console.WriteLine("连接已关闭");
35             }
36             Console.Read();
37         }
38     }
39 }

   连接数据库的步骤:

     ①.创建连接字符串

     ②.创建连接对象

     ③.设置连接字符串

     ④.打开连接

     ⑤关闭连接

     ⑥释放资源     

  

猜你喜欢

转载自www.cnblogs.com/alan-1996/p/10242129.html