Foxtable(狐表)用户栏目专家坐堂 → 两个问题


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

主题:两个问题

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


加好友 发短信
等级:三尾狐 帖子:760 积分:4714 威望:0 精华:0 注册:2011/12/17 18:37:00
两个问题  发帖心情 Post By:2013/8/22 20:42:00 [显示全部帖子]

1)老大,编辑器真心不好用,不是功能的问题,一个是代码量稍微大一些,就卡,复制粘帖也卡,就一个字  卡死了.

 

 

2)

Dim cmd As new SQLCommand
Dim dt As DataTable
cmd.CommandText = "select * From {表A}"
dt = cmd.ExecuteReader(True) '记得将参数设置为True
dt.DeleteFor("xxxxxxxxx")
dt.Save()

 

为啥这样删除不能用?

 

 


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


加好友 发短信
等级:三尾狐 帖子:760 积分:4714 威望:0 精华:0 注册:2011/12/17 18:37:00
  发帖心情 Post By:2013/8/22 21:28:00 [显示全部帖子]

但是现在不是可以操作临时表了?

 

示例五

ExecuteReader有一个可选参数,如果设置为True,那么生成的DataTable不仅可以修改,还可以保存。
新建一个文件,在命令窗口测试下面的代码,会在A的第一行的第一列写入123:

Dim cmd As new SQLCommand
Dim
dt As DataTable
cmd
.CommandText = "select * From {A}"
dt = cmd.ExecuteReader(
True) '记得将参数设置为True
dt
.DataRows(0)("第一列") = 123
dt.Save()

DataTables(
"A").Load() '重新加载表A,看看值是否已经变化

有了这个特性,很多时候,我们不再需要合成Update语句来更新没有加载的后台数据了。

例如要将订购数量超过100的订单的折扣,统一设置为0.05,代码为:

Dim cmd As new SQLCommand
Dim
dt As DataTable
cmd.CommandText =
"Select [_Identify],折扣 From {订单} Where 数量 >= 500"
dt
= cmd.ExecuteReader(True) '记得将参数设置为True
For Each
dr As DataRow In dt.DataRows
  
dr("折扣") = 0.05
Next

dt
.Save()


 回到顶部