DataTable 添加列、设置主键、添加行、查询、更新
来源:互联网 发布:kettle7.1源码搭建 编辑:程序博客网 时间:2024/05/21 17:49
对于数据库的操作,资料太多,大家也比较熟悉。
但有时数据量较少,但更新频繁的变量操作,通常采用自定义结构,但自定义结构的可维护性和灵活性就比不上临时表,我们可以先用DataTable做为内存临时表,以数据库操作的方式灵活添加列、行,完成 主键设置、查询、更新等操作,还可以保存为xml文件。
假设在当前类作用域有全局对象
public static DataTable dtRefresh = new DataTable();
我们在某个测试函数中添加下面的测试代码:
为了方便存储为xml文件,需要设置表名:
dtRefresh.TableName = "刷新任务";
为临时表添加表结构,既列名:
dtRefresh.Columns.Add("数量", typeof(int));
dtRefresh.Columns.Add("频率", typeof(int));
dtRefresh.Columns.Add("自动关闭延迟", typeof(int));
dtRefresh.Columns.Add("Url", typeof(string));
设置其中一个列Url为主键:
DataColumn[] clos = new DataColumn[1];
clos[0] = dtRefresh.Columns["Url"];
dtRefresh.PrimaryKey = clos;
为表添加一行测试记录:
注意:添加行时,应先声明行,在需要用时再赋予对象实体,这样的目的是为了突出每次添加新行时,只需赋予一个dtRefresh.NewRow()返回的对象即可,而不用重新声明一个行对象名。因为类操作是传引用,如果一个行对象名赋予一个表,再修改这个对象名的内容,表中内容会跟着修改,所以每次添加行时要重用行名但避免重用对象。
DataRow dr;
dr = dtRefresh.NewRow();
dr["数量"] = 100;
dr["频率"] = 100;
dr["自动关闭延迟"] = 100;
dr["Url"] = "http://www.baidu.com/";
dtRefresh.Rows.Add(dr);
执行查询:
DataRow[] drArr = dtRefresh.Select("Url = \'http://www.baidu.com/\'");
foreach (var item in drArr)
{
txb.Text += item["Url"].ToString() + Environment.NewLine;
}
根据查询条件,更新记录:
DataRow[] drArr = dtRefresh.Select("Url = \'http://www.baidu.com/\'");
drArr[0]["Url"] = "g.cn";
foreach (var item in drArr)
{
txb.Text += item["Url"].ToString() + Environment.NewLine;
}
写入XML文件:
dtRefresh.WriteXml(@"d:\1.xml");
- DataTable 添加列、设置主键、添加行、查询、更新
- DataTable 添加列、设置主键、添加行、查询、更新
- DataTable添加行、 列
- DataTable添加行和列
- DataTable 创建主键PrimaryKey 增加列,行,查询,主键查询
- datatable怎么添加列
- 添加列和主键
- DataTable 添加列和行的方法
- DataTable添加列和行的方法
- DataTable添加列和行的方法
- DataTable添加列和行NEW
- DataTable添加列和行的方法
- 添加datatable的行和列
- DataTable添加列和行的方法
- DataTable添加列和行的方法
- DataTable添加列和行的方法
- Datatable修改其中数据或添加行添加列
- 给DataTable添加新列
- 多用户访问servlet时,Servlet中出现的由多线程引起的问题。
- strcpy和memcpy的区别
- oracle 11g 手动配置EM
- USB设备的枚举过程
- How to pause action of cocos2d
- DataTable 添加列、设置主键、添加行、查询、更新
- 关于Activity启动模式的理解
- 北大青鸟给了你什么?
- Android五大布局
- 我对android理解之pmem
- 一个基于 EasyUI 的前台架构(1)页面布局
- JavaScript学习日记(一)
- Mac常用快捷键以及相关技巧
- Android---SurfaceView(使游戏主角动起来)