DataSet、DataTable、DataView三者关系及DataView 常见用法
程序员文章站
2022-06-09 15:25:47
DATASET 可以理解为是个数据库。 DATATABLE 可以理解为是个数据表。 DATAVIEW 可以理解为是表的视图。 dataset 数据集合可以包含多个datatable,而datatable可以声明多个dataview。dataview是个虚拟的视图,用于数据展示层,可以通过对它的Row ......
dataset 可以理解为是个数据库。
datatable 可以理解为是个数据表。
dataview 可以理解为是表的视图。
dataset 数据集合可以包含多个datatable,而datatable可以声明多个dataview。dataview是个虚拟的视图,用于数据展示层,可以通过对它的rowfilter、sort属性的设置,控制输出想要的数据集合。
dataview过滤 和 排序
1 //假设有个datatable 2 datatable dt=new datatable(); 3 //转成一个dataview 4 dataview dv=dt.defaultview; 5 //加上过滤条件 6 dv.filtersort=" 员工='张三'"; 7 //重新转化为新datatable 8 datatable newtable=dv.totable();
//员工id大于5且生日小于? dv.rowfilter = "employeeid >5 and birthdate < #1/31/82#"; //描述类似于product关键字 dv.rowfilter = "description like '*product*'"; //员工id等于 2 or 4 or 5 dv.rowfilter = "employeeid in (2,4,5)"; //如果在like子句中已经有了*或%字符,你必须用方括号将其括起,以免歧义。如果很不幸,字符串中方括号本身也存在了,那么它也必须用将本身括起 dv.rowfilter = "description like '[[]*[]]product[[]*[]]"; //员工id小于6且名字字数偶数,员工id大于6且名字字数奇数 dv.rowfilter="iif(employeeid<6, len(lastname) %2 =0, len(lastname) %2 >0)";
//排序 //正序 dv.sort = "id asc"; //倒序 dv.sort = "id desc"; //多个排序 view.sort = "id desc,name asc";