马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

DataSet、DataTable、DataView三者关系及DataView 常见用法

[复制链接]
查看1638 | 回复2 | 2019-12-26 09:08:43 | 显示全部楼层 |阅读模式

DATASET 可以明白为是个数据库。

DATATABLE 可以明白为是个数据表。

DATAVIEW 可以明白为是表的视图。

dataset 数据聚集可以包罗多个datatable,而datatable可以声明多个dataview。dataview是个假造的视图,用于数据展示层,可以通过对它的RowFilter、Sort属性的设置,控制输出想要的数据聚集。

  1. DataView过滤 和 排序
复制代码
  1. 1 //假设有个DataTable
  2. 2 DataTable dt=new DataTable();
  3. 3 //转成一个DataView
  4. 4 DataView dv=dt.DefaultView;
  5. 5 //加上过滤条件
  6. 6 dv.FilterSort=" 员工='张三'";
  7. 7 //重新转化为新DataTable
  8. 8 DataTable newTable=dv.ToTable();
复制代码
  1. //员工ID大于5且生日小于?
  2. dv.RowFilter = "EmployeeID >5 AND Birthdate < #1/31/82#";
  3. //形貌雷同于product关键字
  4. dv.RowFilter = "Description LIKE '*product*'";
  5. //员工ID即是 2 or 4 or 5
  6. dv.RowFilter = "employeeID IN (2,4,5)";
  7. //如果在LIKE子句中已经有了*或%字符,你必须用方括号将其括起,以免歧义。如果很不幸,字符串中方括号本身也存在了,那么它也必须用将本身括起
  8. dv.RowFilter = "Description LIKE '[[]*[]]product[[]*[]]";
  9. //员工ID小于6且名字字数偶数,员工ID大于6且名字字数奇数
  10. dv.RowFilter="IIF(employeeID<6, Len(lastname) %2 =0, Len(lastname) %2 >0)";
复制代码
  1. //排序
  2. //正序
  3. dv.Sort = "ID asc";
  4. //倒序
  5. dv.Sort = "ID desc";
  6. //多个排序
  7. view.Sort = "ID DESC,Name ASC";
复制代码
C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则