Foxtable(狐表)用户栏目专家坐堂 → [求助]UPDATE语句请教


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

主题:[求助]UPDATE语句请教

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


加好友 发短信
等级:童狐 帖子:295 积分:1856 威望:0 精华:1 注册:2012/7/9 23:25:00
  发帖心情 Post By:2012/12/9 23:18:00 [只看该作者]

还是搞不定啊,各位再帮我看看

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


加好友 发短信
等级:童狐 帖子:295 积分:1856 威望:0 精华:1 注册:2012/7/9 23:25:00
  发帖心情 Post By:2012/12/9 23:26:00 [只看该作者]

大家帮我看看,如图要将选定产品中雇员列为空的部分记录写入选定的雇员号


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20121209231946.png
图片点击可在新窗口打开查看

上传示例

 


 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.zip


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


加好友 发短信
等级:童狐 帖子:295 积分:1856 威望:0 精华:1 注册:2012/7/9 23:25:00
  发帖心情 Post By:2012/12/9 23:46:00 [只看该作者]

sql语句提示出错,大家帮忙看看

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/10 9:09:00 [只看该作者]

 楼主犯了写小错误。

If emt = 0 Then
    Return
End If
Dim num As Integer = e.Form.Controls("Num1").Value
If num <= 0 OrElse num > emt Then
    MessageBox.Show("对不起,操作条数超过限值","提示",MessageBoxButtons.OK,MessageBoxIcon.Error)
Else
    Dim cp As String = e.Form.Controls("ComboBox1").Value
    Dim gy As String = e.Form.Controls("ComboBox2").Value
    If gy Is Nothing Then
        MessageBox.Show("请选择雇员","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
        Return
    End If
    Dim dt As DataTable
    Dim cmd As new sqlcommand
    cmd.C
    cmd.CommandText = "Select Top " & num & " * From {订单} Where 产品 = '" & cp & "' And 雇员 Is Null"
    dt = cmd.ExecuteReader
    num = dt.DataRows(num - 1)("编号")
    cmd.CommandText = "UPDATE {订单} Set 雇员 = '" & gy & "' Where 产品 =  '" & cp & "' And 雇员 Is Null And 编号 <= " & num
    If cmd.ExecuteNonQuery > 0 Then
        MessageBox.Show("操作成功","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
    e.Form.Close
End If

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


加好友 发短信
等级:童狐 帖子:295 积分:1856 威望:0 精华:1 注册:2012/7/9 23:25:00
  发帖心情 Post By:2012/12/10 9:45:00 [只看该作者]

呵呵,犯了不该犯的错误

谢谢小林!总感觉我这个方法效率不高,不知有没有更好的方法?


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/10 9:58:00 [只看该作者]

 因为你要修改的是前多少行,所以只能通过获取到第n行的编号,然后更新比这个编号小的行。

 没有便捷的方式。除非你的应用改变。

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


加好友 发短信
等级:童狐 帖子:295 积分:1856 威望:0 精华:1 注册:2012/7/9 23:25:00
  发帖心情 Post By:2012/12/10 10:11:00 [只看该作者]

我的意思是读取后台数据太频繁,或者可以考虑用一个中转表

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/10 10:17:00 [只看该作者]

 嗯嗯,确实,用一个临时表或者数据表吧。一次读取所需的内容,这样只在客户端查询,这样比较好。

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


加好友 发短信
等级:童狐 帖子:295 积分:1856 威望:0 精华:1 注册:2012/7/9 23:25:00
  发帖心情 Post By:2012/12/10 15:32:00 [只看该作者]

已经搞定,谢谢小林!

现在用了中转表效率应该好多了,大数据量的时候会好许多,传上与FOXTABLE新手分享

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test1.zip

[此贴子已经被作者于2012-12-10 16:09:41编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/10 15:36:00 [只看该作者]

 嗯嗯,不错。

 回到顶部
总数 20 上一页 1 2