Foxtable(狐表)用户栏目专家坐堂 → [原创]SQLCommand


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

主题:[原创]SQLCommand

帅哥,在线噢!
L88919138
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:724 积分:6913 威望:0 精华:0 注册:2012/3/1 7:20:00
[原创]SQLCommand  发帖心情 Post By:2015/5/7 15:52:00 [只看该作者]

  想从SQL外部数据源里采购付款表找出与存货档案当前记录相同的存货名称,并将里面单价和余额取值到存货档案中相对应列去,下面代码虽可正确执行,只是效率太慢,如何优化,请大师们帮忙指点下,谢谢。


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/5/7 15:53:00 [只看该作者]

代码发上来

 回到顶部
帅哥,在线噢!
L88919138
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:724 积分:6913 威望:0 精华:0 注册:2012/3/1 7:20:00
  发帖心情 Post By:2015/5/7 15:54:00 [只看该作者]

发不上来,一直提示错误。

 


 回到顶部
帅哥,在线噢!
L88919138
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:724 积分:6913 威望:0 精华:0 注册:2012/3/1 7:20:00
  发帖心情 Post By:2015/5/7 15:55:00 [只看该作者]

  • ??????????
  • 请仔细阅读论坛帮助文件,确保您有相应的操作权限。

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


    加好友 发短信
    等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
      发帖心情 Post By:2015/5/7 15:56:00 [只看该作者]

    SQL语句中的  F ROM 要带空格才能发

     回到顶部
    帅哥,在线噢!
    L88919138
      6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


    加好友 发短信
    等级:三尾狐 帖子:724 积分:6913 威望:0 精华:0 注册:2012/3/1 7:20:00
      发帖心情 Post By:2015/5/7 15:57:00 [只看该作者]

     下载信息  [文件大小:   下载次数: ]
    图片点击可在新窗口打开查看点击浏览该文件:想从sql外部数据源里.zip

    把代码以压缩文件打包下传。

     回到顶部
    帅哥,在线噢!
    L88919138
      7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


    加好友 发短信
    等级:三尾狐 帖子:724 积分:6913 威望:0 精华:0 注册:2012/3/1 7:20:00
      发帖心情 Post By:2015/5/7 16:02:00 [只看该作者]

     

    想从SQL外部数据源里采购付款表找出与存货档案当前记录相同的存货名称,并将里面单价和余额取值到存货档案中相对应列去,下面代码虽可正确执行,只是效率太慢,如何优化,请大师们帮忙指点下,谢谢。

    Dim cmd As new  SQLCommand
    cmd.cFONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">鲜迪数据库
    "
    For Each dr As DataRow In DataTables("
    存货档案").DataRows
        cmd.CommandText = "Select top 1
    单价 F rom  {采购付款表}  Where 商品名称 = '" & dr("存货名称") & "' and 单价 is not null order by [_sortkey] desc "
        If cmd.CommandText IsNot Nothing
            dr("
    参考单价") = cmd.executescalar
        Else
            dr("
    参考单价") = 0
        End If   
        cmd.CommandText = "Select top 1
    余额 F rom  {采购付款表}  Where 商品名称 = '" & dr("存货名称") & "' and 余额 is not null order by [_sortkey] desc "
        If cmd.CommandText IsNot Nothing
            dr("
    账面数量") = cmd.executescalar
        Else
            dr("
    账面数量") = 0
        End If  
    Next


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


    加好友 发短信
    等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
      发帖心情 Post By:2015/5/7 16:02:00 [只看该作者]

     你这样.还不如次SQLcommand 把表查询到DT里. 然后再用DT.FIND找到对应的行赋值
    这也速度更快.不用查询N次数据库

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


    加好友 发短信
    等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
      发帖心情 Post By:2015/5/7 16:02:00 [只看该作者]

     一次性取出整个表,然后用find的方式,不要重复使用sqlcomman

     


     回到顶部
    帅哥,在线噢!
    L88919138
      10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


    加好友 发短信
    等级:三尾狐 帖子:724 积分:6913 威望:0 精华:0 注册:2012/3/1 7:20:00
      发帖心情 Post By:2015/5/7 16:04:00 [只看该作者]

    还真是
    SQL语句中的  F ROM 要带空格才能发
     

    前就一直试发不上来,以为我没权限发了,弄个压缩包来发。

     


     回到顶部
    总数 18 1 2 下一页