使用ADO.NET访问数据库,类和对象概述
从做项目开始,就一直用动软生成的三层架构,导致现在对数据库的连接,语句的书写,应用起来显得比较陌生,或者是之前就没有掌握牢固的原因吧,用工具用的整个人都懒惰起来了,一不用工具就无从下手了,现在借此杨总给的学习机会,好好整理一下思路。
ADO.NET(即Active Data Objects.NET)是.NET Framework的重要组成部分,使用ADO.NET可以很方便的访问数据库。ADO.NET是数据库应用程序和数据源沟通的桥梁,主要提供一个面向对象的数据存储结构,用来开发数据库应用程序。ADO.NET的架构主要是希望能够在做处理数据的同时,不要一直和数据库联机,而导致一直占用系统资源的现象发生。这跟三层比较,各有利弊吧,利用三层我们没有必要频繁的连接,打开,关闭数据库,但是一直和数据库联机,会导致占用系统资源。三层应用起来还是挺方便的,但是这也需要最原始的基础,所以,地基一定要牢固。
ADO.NET将存取数据和数据处理分开,达到离线访问数据的目的,使得数据库能够执行其他操作。因此将ADO.NET架构分成.NET 数据提供程序和DataSet数据集(数据处理的核心)两个主要部分。
ADO.NET中的类大概可分为.NET数据提供者对象和用户对象两种,.NET数据提供者对象专用于每一种类型的数据源,专用于提供者的用户对象完成在数据源中实际的读取和写入工作。用户对象是将数据读入到内存中后用来访问和操作数据的对象。用户对象以非连接方式使用。在数据库关闭之后也可以使用内存中的数据,而.NET数据提供者对象中要求活动的连接。
常用的. NET数据提供者对象分为以下4种:
1、SQL Server数据源提供程序
2、OLE DB(Object Linking and Embedding,即对象链接和嵌入技术)数据源提供程序
3、ORACLE数据源提供数据
4、与ODBC兼容的数据源提供程序。
所有的数据提供程序都位于System.Data命名空间中。
ODBC即Open Database Connectivity,开放式数据库连接技术。使用ODBC的目标是使程序员开发的数据库项目可以几乎不加改动地访问不同操作系统平台上的各种数据库,如Windows平台上的SQL Server,Oracle,Access,UNIX平台上的Oracle等。
ODBC接口出现之后,在很长的时间内一直是程序员开发数据库系统的首选接口技术,因为它比较简单。但ODBC接口有两个主要的缺陷。
1、ODBC接口只能连接关系型数据,比如,关系型数据库、Excel、规定格式的文本等。但不能用于非关系型的数据,如电子邮件数据等。
2、ODBC由于需要支持很多类型的数据库,普遍适用,但对每种数据库的支持都不是特别理想。
OLEDB(Object Linking and Embedding,即对象链接和嵌入技术)是新一代数据接口标准,其设计要求是能够以统一的方式访问所有的数据类型。换句话说,开发的数据库项目的后台数据库几乎可以是所有的数据类型。目前OLEDB也逐步成为了利用ADO.NET开发数据库项目的接口标准。微软已经开发了许多标准的OLEDB驱动程序。
OLEDB接口中没有集中管理OLEDB驱动程序,而是开发了各种数据库的OLEDB驱动程序,程序员可以按照数据库类型的不同选择驱动程序。
OLEDB接口追求的是“专用”,每种类型的数据库有自己专用的OLEDB接口驱动程序。
ODBC接口追求的是“通用”,首先都要使用ODBC数据源管理器,然后调用自己的驱动程序。
提示:正是由于OLEDB接口的驱动程序是针对特定类型的数据库设计的,所以尽管通用性差一些,但效率更高。