笔记14 数据库编程技术

ADO.NET

一: Data Provider 有四个核心对象:

Connection 与数据源建立连接

Command 对数据源执行指定命令

DataReader 从数据源返回一个仅向前的只读数据流

DataAdapter 自动将数据的各种操作变换到数据源相应的sql 语句

二:DataSet

相当于内存中的数据库,从数据源获取数据,不依赖于数据库的独立数据集。(XML描述,平台、数据无关)

DataSet表示整个数据集,包含表,约束和表之间的关系。

Connection->Command(在内存中一次存放一行数据)

Connection->DataReader 

Connection->DataAdapter ->DataSet

三:Command对象的主要成员

Connection 数据库连接

CommandText SQL语句

ExecuteNonQuery 执行不返回行的语句,eg Update 返回受影响的行的个数

ExecuteReader 返回DataReader对象

ExecuteScalar 执行查询,并返回查询结果集中第一行第一列

 

四:DataSet用DataTable表示,多个DataTable组成DataTableCollection对象。每个DataTable表示内存中的一个表。包含DataColumnCollection和DataRowCollection对象。

DataTable之间通过DataRelation来表达,表示表之间的主外键关系。它们形成一个集合Collection.当两个有这种关系的表中的某一个表的记录指针移动时,另一个表的记录指针也随之移动。更新满足主外键约束规则。

DataAdapter主要成员:

SelectCommand从数据库检索数据的Command对象

Fill()向DataSet中填充数据

Update()把DataSet中的数据提交到数据库。(调用之前的命令设置:SqlCommandBuilder builder = new SqlCommandBuilder(DataAdapter))

 

 

五:两种数据库sql语句通用,里面有些字段类型不一样;
Oracle比SQLServer消耗更多内存,因为Oracle每个数据库的服务都是分开的,SQLServer就一个服务可以放很多数据库;
Oracle比SQLServer安全性好,由此
Oracle比SQLServer复杂,比如导入导出数据库、权限管理、,Oracle操作都要多一点,不过都很好学的;

posted @ 2015-10-13 13:57  sunshinelym  阅读(146)  评论(0编辑  收藏  举报