1.2 ADO.NET对象模型
ADO.NET对象模型中有5个主要的数据库访问和操作对象,分别是Connection、Command、DataReader、DataAdapter和DataSet对象。
其中,Connection对象主要负责连接数据库,Command对象主要负责生成并执行SQL语句,DataReader对象主要负责读取数据库中的数据,DataAdapter对象主要负责在Command对象执行完SQL语句后生成并填充DataSet和DataTable,而DataSet对象主要负责存取和更新数据。
ADO.NET主要提供了两种数据提供者(Data Provider),分别是SQL Server.NET Provider和OLE DB.NET Provider。
SQL Server.NET Framework数据提供程序使用它自身的协议与SQL Server数据库服务器通信,而OLEDB.NET Framework则通过OLE DB服务组件(提供连接池和事务服务)和数据源的OLE DB提供程序与OLE DB数据源进行通信。
它们两者内部均有Connection、Command、DataReader和DataAdapter 4类对象。对于不同的数据提供者,上述4种对象的类名是不同的,而它们连接访问数据库的过程却大同小异。
这是因为它们以接口的形式,封装了不同数据库的连接访问动作。正是由于这两种数据提供者使用数据库访问驱动程序屏蔽了底层数据库的差异,所以从用户的角度来看,它们的差别仅仅体现在命名上。
表2-1描述了这两类数据提供者下的对象命名。
表2-1 ADO.NET对象描述
对象名 | OLE DB数据提供者的类名 | SQL Server数据提供者类名 |
Connection对象 | OleDbConnection | SqlConnection |
Command对象 | OleDbCommand | SqlCommand |
DataReader对象 | OleDbDataReader | SqlDataReader |
DataAdapter对象 | OleDbDataAdapter | SqlDataAdapter |