ADO.NET技术主要包括Connection、Command、DataReader、DataAdapter、DataSet和DataTable等6个对象,下面对这6个对象进行简单的介绍:
(1)Connection对象的主要功能是与数据库进行连接(事物处理也使用此对象)。
(2)Command对象主要用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令。
(3)DataReader对象主要功能是以只进流的方式从数据中读取行。
(4)DataAdapter对象主要功能是将数据库中的内容填充到DataSet对象,在修改DataSet对象中的数据后
还可以将修改信息通知数据库,使DataSet对象中的数据与数据库中的数据保持一致。
(5)DataSet对象是ADO.NET的核心概念,它是支持ADO.NET断开式、分布式数据方案的核心对象。
DataSet对象是一个数据库容器,可以把它当作是存在于内存中的数据库,无论数据源是什么,它都会提供一致的关系编程模型。
(6)DataTable可以理解为内存中的数据表。

形象地说明了ADO.NET中的每个对象的作用。
(1)数据库可以比作水库,存储了大量的数据。
(2)Connection对象可以比作进水笼头,只有打开进水笼头后抽水机才可以抽到水。
(3)Command对象可以比作抽水机,打开进水笼头,然后再打开抽水机,水会被送到用户家里。
(4)DataReader对象可以比作输水管道,打开进水笼头,然后再打开抽水机,水会被送到用户家里。
(5)DataAdapter对象可以比作输水管道,打开进水笼头,通过自己的发动机来抽水,水会被送到自己的水场中保存,以备后期使用。
(6)DataSet对象可以比作自来水场,当自来水场的水被抽水机装满后,即使关掉水笼头(断开数据库连接),自来水场还是有水可以使用的。
(7)DataTable对象可以比作自来水场中的水池,自来水场由很多水池组成。

摘自C#相关书籍

ADO.NET 使您能够创建 DataTable 对象并将其添加到现有 DataSet 中。 可以使用 PrimaryKey 和 Unique 属性为 DataTable 设置约束信息。

DataSet customerOrders = new DataSet("CustomerOrders");DataTable ordersTable = customerOrders.Tables.Add("Orders");DataColumn pkOrderID = ordersTable.Columns.Add("OrderID", typeof(Int32));
ordersTable.Columns.Add("OrderQuantity", typeof(Int32));
ordersTable.Columns.Add("CompanyName", typeof(string));ordersTable.PrimaryKey = new DataColumn[] { pkOrderID };

区分大小写

DataSet 中可以存在两个或两个以上的同名但是大小写不同的表或关系。 在这种情况下,通过名称对表和关系的引用将区分大小写。 例如,如果 DataSet dataSet 包含表 Table1 和 table1,则将通过名称将 Table1 作为dataSet.Tables["Table1"] 来引用,而将 table1 作为 dataSet.Tables["table1"] 来引用。 如果试图将其中任一个表作为 dataSet.Tables["TABLE1"] 来引用,则会生成异常。

如果只有一个具有特定名称的表或关系,则区分大小写行为不适用。 例如,如果 DataSet 只包含 Table1,则可以使用 dataSet.Tables["TABLE1"] 来引用。

转载于:https://www.cnblogs.com/yieryi/p/4619001.html

Winform开发之ADO.NET对象Connection、Command、DataReader、DataAdapter、DataSet和DataTable简介...相关推荐

  1. C# winform 开发之Excel操作

     C# winform 开发之Excel操作(一)------打开Exce表 在开始之前,先要导入Excel的类库.步骤如下: 把鼠标移动解决方案---->右击----->选择&quo ...

  2. C# winform 开发之Excel操作(一)------打开Exce表

    在开始之前,先要导入Excel的类库.步骤如下: 把鼠标移动解决方案---->右击----->选择"添加引用"---->会出现一个对话框---->选择标题为 ...

  3. Winform开发之ComboBox和ComboBoxEdit控件绑定key/value数据

    使用 ComboBox 控件绑定key/value值: 因为 ComboBox 是有 DataSource 属性的,所以它可以直接绑定数据源,如 DataTable.ListItem 等. 使用 Da ...

  4. WinForm界面开发之“HTML内容编辑控件”

    做过了很多Winform的共享软件,对界面的设计有了一定的经验和积累,准备开一个"WinForm界面开发"系列文章,介绍下相关的Winform界面设计和相关控件的使用,促进相互交流 ...

  5. ArcGIS Engine开发之旅08--和查询相关的对象和接口

    ArcGIS Engine开发之旅08--和查询相关的对象和接口 原文:ArcGIS Engine开发之旅08--和查询相关的对象和接口 查询在GIS领域应该是一个很频繁的操作,在GIS中除了具有属性 ...

  6. ios c语言调用oc方法,ios开发之OC基础-类和对象(示例代码)

    本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再 ...

  7. ios开发之OC基础-类和对象

    ios开发之OC基础-类和对象 本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录 ...

  8. 李洪强iOS开发之RunLoop的原理和核心机制

    李洪强iOS开发之RunLoop的原理和核心机制 搞iOS之后一直没有深入研究过RunLoop,非常的惭愧.刚好前一阵子负责性能优化项目,需要利用RunLoop做性能优化和性能检测,趁着这个机会深入研 ...

  9. qpython3可视图形界面_python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法...

    QWidget基本介绍 基础窗口控件QWidget类是所有用户界面对象的基类,所有的窗口或者控件都直接或者间接的继承自QWidget类. 窗口坐标系统 PyQt使用统一的坐标系统来定位窗口控件的位置和 ...

最新文章

  1. 【Spring】新注解
  2. vue 点击事件执行多次
  3. java socket 通讯
  4. 分布式MQ消息存储选择
  5. java程序员面试怎么难为面试官_Java程序员面试这些多线程问题你知道吗?
  6. 用php做居中金字塔,[菜鸟学php] php版自定义函数实现金字塔
  7. golang中值类型/指针类型的变量区别总结
  8. 【M1芯片兼容】MP3 Audio Recorder for Mac - MP3录音工具
  9. jQuery正则表达式实现表单验证功能(注册)
  10. CMD查看端口和进程
  11. 某知名网络安全公司的渗透测试工程师面试题实战汇总
  12. 这篇不讨好任何人的回忆录,记录了我从双非学校到BAT/TMD六offer的原因
  13. 在VS 2019中使用HDF5的C API遍历HDF5数据集
  14. 企立方-拼多多采集注意的点有哪些
  15. Python 制作朋友圈高逼格的九宫格图片
  16. library netcdf 路径_c#读取netcdf文件小结
  17. 华为云计算机系统是什么,你了解什么是华为云电脑吗,它有什么用
  18. 网络营销推广怎么做 微信如何吸引粉丝
  19. FileZilla 使用教程
  20. mp3怎么转换成wav格式

热门文章

  1. Redis的常用功能
  2. adb无法连接安卓手机
  3. JAVA面向对象明星类
  4. 第八篇Django分页
  5. 做最好的自己——读书笔记
  6. 深入理解和应用display属性(一)
  7. InnoDB的auto_increment指定值被重置问题
  8. javasript 操作option select
  9. skywalking oap-server 域名配置
  10. QC安装与运行中的问题汇集