1、简要说明二者关系

在我们编写代码的时候从数据库里取出数据,填充到dataset里,再根据表的名字,实例化到 datatable 中。其实使用 dataset 相当于所使用数据库中数据的副本,保存在服务器的内存中。
       ●注意如下 Ado.net 关系: 
        Connection_____Command____DataAdapter____Dataset  _____Datareader

● DataSet 是放在内存中的,对DataSet中数据的修改并不直接反应到数据库,要通过 DataAdapter 的 Update 方法更新回数据库

● DataSet相当你用的数据库; DataTable相当于你的表。一个 DataSet 可以包含多个 DataTable

DataSet 由表、关系和约束的集合组成。在 ADO.NET 中,DataTable对象用于表示 DataSet 中的表。DataTable 表示一个内存内关系数据的表;

2.以下代码示例演示如何构造DataSet ,DataTable 的实例关系。

 Dim   Ds   As   DataSet   =   New   DataSet( "enUser ")

以下示例构造一个 DataSet,将一个新的   DataTable  对象添加到该   DataSet  中,然后将三个   DataColumn  对象添加到该表中。最后,该代码将一个列设置为主键列。

   Dim   Ds   As   DataSet   =   New   DataSet( "enUser ")Dim   ordersTable   As   DataTable   =   Ds.Tables.Add( "enUser ")Dim   pkCol   As   DataColumn   =   ordersTable.Columns.Add( "OrderID ",   Type.GetType( "System.Int32 "))ordersTable.Columns.Add( "OrderQuantity ",   Type.GetType( "System.Int32 ")) ordersTable.Columns.Add( "CompanyName ",   Type.GetType( "System.String "))ordersTable.PrimaryKey   =   New   DataColumn()   {pkCol}

3. DataSet中Table1、table1的大小写关系

按名称引用DataSet中的表和关系是区分大小写的。一个DataSet 中可以存在两个或更多个名称相同但大小写不同的表或关系。例如,可以有   Table1   和   table1。在这种情况下,对其中一个表的按名称引用必须精确匹配该表名称的大小写,否则会引发异常。例如,如果   DataSet   myDs 包含表  Table1   和   table1,则会按名称将   Table1   当作   myDS.Tables[ "Table1"]   来引用,而将   table1   当作   myDS.Tables   ["table1 "]   来引用。如果试图将其中任一个表当作   myDS.Tables   ["TABLE1 "]   来引用,则会生成异常。

如果只存在一个具有特定名称的表或关系,则区分大小写规则不适用。也就是说,如果 DataSet 中没有其他任何表或关系对象匹配该特定表或关系对象的名称,那么即使大小写不同,仍可以按采用任何大小写的名称来引用该对象,而不会引发异常。例如,如果   DataSet   只包含   Table1,则可以使用   myDS.Tables[ "TABLE1"]   来引用它。

以上是对.Net 中DataSet和DataTable的 区别与联系的总结,如有不足之处,还请批评与指教。

转载于:https://www.cnblogs.com/dyllove98/p/3243936.html

.Net 中DataSet和DataTable的 区别与联系相关推荐

  1. C# DataSet与DataTable的区别和用法

    DataSet是数据集,DataTable是数据表,DataSet存储多个DataTable.DataSet和DataTable像是专门存储数据的一个容器,在你查询数据库得到一些结果时可以存在里面. ...

  2. C#中的DataSet添加DataTable问题

    最近在使用DataTable来给前台控件绑定数据,开始时查了网上的一些给DataSet添加DataTable时需要注意的地方,一般都要添加表名并且使用DataTable.Copy()方法,否则会报错, ...

  3. 【ADO.NET基础知识】SqlConnection、command、DataSet 、DataTable、dataAdapter

    1.使用Connection连接数据库的步骤: (1).添加命名空间 System.Data.SqlClient(注意:初学者经常会忘记) (2)定义连接字符串.连接SQL Server 数据库时: ...

  4. C#-DataSet和DataTable详解

    1.创建DataSet对象: DataSet ds = new DataSet("DataSetName"); 2.查看调用SqlDataAdapter.Fill创建的结构 da. ...

  5. C# LINQ系列:LINQ to DataSet的DataTable操作 及 DataTable与Linq相互转换

    LINQ to DataSet需要使用System.Core.dll.System.Data.dll和System.Data.DataSetExtensions.dll,在项目中添加引用System. ...

  6. Winform开发之ADO.NET对象Connection、Command、DataReader、DataAdapter、DataSet和DataTable简介...

    ADO.NET技术主要包括Connection.Command.DataReader.DataAdapter.DataSet和DataTable等6个对象,下面对这6个对象进行简单的介绍: (1)Co ...

  7. DataGridView,Dataset,DataTable,DataRow等使用心得

    DataGridView的列编辑: Name:用于调用属性的时候用的,也可以不使用Name去调用,选择数字1,2,3...选择第1列,第2列,第3列. HeaderText:表头显示的名字方便用户使用 ...

  8. DOM中Property与Attribute的区别

    property和attribute的汉语翻译几乎相同,都有"属性"的意义(这里姑且称attribute为"特性",以方便区分),而他们的取值也经常相同,但有时 ...

  9. DataSet和DataTable详解

    1.创建DataSet对象: DataSet ds = new DataSet("DataSetName"); 2.查看调用SqlDataAdapter.Fill创建的结构 da. ...

最新文章

  1. TorchVision中通过AlexNet网络进行图像分类
  2. 分类VS标签,一文带你看懂数据中台为什么要建标签体系?
  3. 深入理解 Session 与 Cookie
  4. java 多线程变量可见性_Java多线程:易变变量,事前关联和内存一致性
  5. datatables 行分组信息展开与折叠的功能实现_[LaTeX 尝试] fancyvrb - 修复行引用的超链接跳转位置
  6. VALSE学习(十六): Visual Question Generation and Answering-视觉问题生成和视觉问题
  7. iOS import,include和class的区别
  8. 在C#中使用消息队列RabbitMQ
  9. 两种方法,给你的Safari浏览器添加必应/有道/谷歌网页即时翻译插件
  10. 1 常见的HTTP股票数据接口整理 腾讯 新浪 网易 2019-08-02
  11. DotNetCasClient 如何获取Cas服务器返回的attributes中的数据
  12. JavaScript检测邮箱 e-mail
  13. 洛谷.P3374 树状数组
  14. 天荒地老修仙功-第六部:Spring Cloud Eureka——服务发现
  15. ZYNQ裸机实现 USB MASS STORAGE (usb+sd卡 实现U盘功能)
  16. 毛玻璃效果就是这么唯美
  17. 麦咖啡未来三年将投资25亿,在中国内地布局超过4000家
  18. Recsys2021 | 基于Transformer的会话推荐
  19. 票据OCR扫描仪-助力财务智能化
  20. 深入了解视觉语言模型

热门文章

  1. oracledatabase11gr2怎么打开_win10 安装oracle 11gR2_database(内附下载地址)
  2. 判断图有无环_【转】判断一个图是否有环 无向图 有向图
  3. 联想e52进入bios_联想笔记本怎么设置u盘启动|联想笔记本bios设置usb启动步骤
  4. 微脉java面试,微脉医疗开放平台
  5. GB2312 UTF8 UCS2汉字编码对应表
  6. 鸿蒙处理器的手机有什么,华为重拳出击!首款鸿蒙手机已确认,网友:还买什么iPhone11?...
  7. 服务器系统怎么分配,服务器系统盘分配多大内存
  8. groupby函数_干货分享|达梦数据库常用集函数与分析函数(下)
  9. python中库是什么意思_python的库是什么意思
  10. 来看看,他的嵌入式之旅!