Foxtable(狐表)用户栏目专家坐堂 → 【疑问】用.ExecuteReader 生成的datatable可以保存数据吗?


  共有8442人关注过本帖树形打印复制链接

主题:【疑问】用.ExecuteReader 生成的datatable可以保存数据吗?

帅哥哟,离线,有人找我吗?
even0898
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
【疑问】用.ExecuteReader 生成的datatable可以保存数据吗?  发帖心情 Post By:2013/3/4 0:02:00 [只看该作者]

Dim cmd As New SQLCommand
 
    cmd.CommandText = "select * from {客户订单子表} where 客户订单编号 ='" & e.DataRow("客户订单编号") & "' And OPN ='" & e.DataRow("料号") & "'"
    dt = cmd.ExecuteReader '生成客户订单子表
Dim dr As DataRow = dt.Find("客户订单编号 ='" & e.DataRow("客户订单编号") & "'And OPN ='" & e.DataRow("料号") & "'")

 

像这样的,对dr("列名")进行赋值的话,可以保存到后台去吗?

[此贴子已经被作者于2013-3-4 0:02:55编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/4 0:09:00 [只看该作者]

图片点击可在新窗口打开查看有人知道吗?我要测试的话要写好多代码,提前知道的话我就少走点弯路了。253.253

 回到顶部
帅哥哟,离线,有人找我吗?
夕然
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/3/4 0:19:00 [只看该作者]

以下是引用even0898在2013-3-4 0:02:00的发言:

Dim cmd As New SQLCommand
 
    cmd.CommandText = "select * from {客户订单子表} where 客户订单编号 ='" & e.DataRow("客户订单编号") & "' And OPN ='" & e.DataRow("料号") & "'"
    dt = cmd.ExecuteReader '生成客户订单子表
Dim dr As DataRow = dt.Find("客户订单编号 ='" & e.DataRow("客户订单编号") & "'And OPN ='" & e.DataRow("料号") & "'")

 

像这样的,对dr("列名")进行赋值的话,可以保存到后台去吗?

[此贴子已经被作者于2013-3-4 0:02:55编辑过]
ExecuteReader 生成的是一张临时表,你用dt表示,当然你也可以对其中的任何数据进行查找,然后将查找到的数据赋值给你想要赋值的地方,或者保存到某张表中。


 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/4 0:23:00 [只看该作者]

以下是引用夕然在2013-3-4 0:19:00的发言:
ExecuteReader 生成的是一张临时表,你用dt表示,当然你也可以对其中的任何数据进行查找,然后将查找到的数据赋值给你想要赋值的地方,或者保存到某张表中。

我的意思是,如果对dt里进行操作的话,可以不可以直接把修改过的数据保存到后台呢?

比如dr("数量")原来的值是50,我直接赋值dr("数量") = 60,后台数据会不会变成60?


 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/4 0:28:00 [只看该作者]

图片点击可在新窗口打开查看测试过了,不会..只能做查询用

 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/4 0:32:00 [只看该作者]

只能用UPDATE来。。。FOX的后台更新语句没有更简便的方法吗?有时候需要先对后台的datatable进行查询,然后再用UPDATE来进行更新数据,这command语句要写多少个啊

图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/3/4 9:04:00 [只看该作者]

嗯,这个建议收到,我们会考虑的。

 回到顶部
帅哥哟,离线,有人找我吗?
even0898
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:186 积分:1294 威望:0 精华:0 注册:2011/8/17 17:29:00
  发帖心情 Post By:2013/3/4 9:44:00 [只看该作者]

顶狐狸爸爸,可以不可以支持用COMMAND语句直接调用某一DataRow呢?很多时候我们需要查找的是后台的某几个字段,这样如果用

ExecuteScalar 得用好几个 用 ExecuteReader 又好像有点浪费..

 

无限遐想中...如果可以有更简便的语句直接更新后台数据的话,更轻量级的FOXTABLE可以被设计出来,甚至可以在FOX里不添加任何表结构图片点击可在新窗口打开查看

[此贴子已经被作者于2013-3-4 9:47:08编辑过]

 回到顶部