Foxtable(狐表)用户栏目专家坐堂 → SQL查询窗口出错


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

主题:SQL查询窗口出错

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


加好友 发短信
等级:婴狐 帖子:54 积分:607 威望:0 精华:0 注册:2011/5/25 13:37:00
SQL查询窗口出错  发帖心情 Post By:2011/7/22 11:00:00 [只看该作者]

设计好的程序迁移到SQL数据库后,在查询时出现以下提示,因为对SQL不太熟悉,请问应该怎样解决。
图片点击可在新窗口打开查看此主题相关图片如下:qq截图未命名.png
图片点击可在新窗口打开查看

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


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

贴出代码看看。


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


加好友 发短信
等级:婴狐 帖子:54 积分:607 威望:0 精华:0 注册:2011/5/25 13:37:00
  发帖心情 Post By:2011/7/22 11:15:00 [只看该作者]

代码如下:Dim dt As String = e.Form.Controls("ComboBox1").text '表名控件
Dim c As String
If DataTables.Contains(dt) Then
    For Each dc As DataCol In DataTables(dt).DataCols
        c = c & "|" & dc.Name
    Next
     Dim cb2 As WinForm.ComboBox = e.Form.Controls("ComboBox2") '列名控件
      Dim cb7 As WinForm.ComboBox = e.Form.Controls("ComboBox7") '列名控件
        cb2.comboList = c.Trim("|")
        cb7.comboList = c.Trim("|")
       '加入以下5行代码后,当选择表后,组合框3和5会自动加入所选表的第一列第一行的值
    cb2.SelectedIndex = 0
    Dim cmb5 As WinForm.ComboBox = e.Form.Controls("ComboBox3")
    If cmb5.combolist > ""
        cmb5.SelectedIndex = 0
    End If
End If
MainTable = Tables( dt )
'

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


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

上面的代码不应该出现这个问题的。

出问题的代码应该筛选窗口的ComboBox2的Textchanged事件。

用下面的方法定位出错误代码位置所在的行,然后分析原因:

 

http://www.foxtable.net/help/topics/1485.htm

 


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


加好友 发短信
等级:婴狐 帖子:54 积分:607 威望:0 精华:0 注册:2011/5/25 13:37:00
  发帖心情 Post By:2011/7/22 11:31:00 [只看该作者]

谢谢,现试试了

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


加好友 发短信
等级:婴狐 帖子:54 积分:607 威望:0 精华:0 注册:2011/5/25 13:37:00
  发帖心情 Post By:2011/7/29 10:32:00 [只看该作者]

 

Dim dt As String = e.Form.Controls("ComboBox1").text '表名控件

Dim c As String

If DataTables.Contains(dt) Then

    For Each dc As DataCol In DataTables(dt).DataCols

        c = c & "|" & dc.Name

 

    Next

     Dim cb2 As WinForm.ComboBox = e.Form.Controls("ComboBox2") '列名控件

      Dim cb7 As WinForm.ComboBox = e.Form.Controls("ComboBox7") '列名控件

        cb2.comboList = c.Trim("|")

        cb7.comboList = c.Trim("|")

       '加入以下5行代码后,当选择表后,组合框3和5会自动加入所选表的第一列第一行的值

    cb2.SelectedIndex = 0

    Dim cmb5 As WinForm.ComboBox = e.Form.Controls("ComboBox3")

    If cmb5.combolist > ""

        cmb5.SelectedIndex = 0

    End If

End If

MainTable = Tables( dt )




程序运行,发现在内部表时“COMBOX1”选定表时,会在组合框3和5自动加入所选表的第一列第一行的值。但是转到外部数据源SQL数据库时,就不会自动加入值了,也就出现上述错误提示。

可能是赋值语句错误,请帮忙修改一下上述代码!!


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/7/29 11:01:00 [只看该作者]

可能你没有把外部表加入到foxtable吧。


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/7/29 11:04:00 [只看该作者]

还有,你e.Form.Controls("ComboBox1").text 的值是怎么形成的?


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


加好友 发短信
等级:婴狐 帖子:54 积分:607 威望:0 精华:0 注册:2011/5/25 13:37:00
  发帖心情 Post By:2011/7/29 11:22:00 [只看该作者]

选择表后自动形成


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


加好友 发短信
等级:婴狐 帖子:54 积分:607 威望:0 精华:0 注册:2011/5/25 13:37:00
  发帖心情 Post By:2011/7/29 11:29:00 [只看该作者]

已经连接了外部数据源,可以查询的,只是会出现出错提示

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