• 笔记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操作都要多一点,不过都很好学的;

  • 相关阅读:
    ReadOnly TextEdit输入问题
    关于正太分布单侧区间上下限的定义
    关于Devexpress richEditControl
    CentOS7 升级 cmake
    极客时间实战目录
    kafka安装
    查找连续相同值的算法,并给出连续相同值的个数以及位置
    解决若依linux启动ERROR
    supervisor配置进程
    python做上位机
  • 原文地址:https://www.cnblogs.com/newcoder/p/4874430.html
Copyright © 2020-2023  润新知