Foxtable(狐表)用户栏目专家坐堂 → MYSQL关联出错


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

主题:MYSQL关联出错

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


加好友 发短信
等级:超级版主 帖子:109728 积分:558356 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/18 11:26:00 [只看该作者]

加调试代码,每一行都加一个messagebox,哪一个后出错

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


加好友 发短信
等级:六尾狐 帖子:1357 积分:8996 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/4/18 11:27:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:mysql-找不到列jpg.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:六尾狐 帖子:1357 积分:8996 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/4/18 14:30:00 [只看该作者]

Select Case e.Table.Name
    Case "MYSQL-01_Table1"
        '针对MYSQL-01_Table1的代码
        If e.Table.cols.contains("sellID") Then
        
        If Forms("MYSQL-01").Opened() Then'一定要判断用于模拟关联表的窗口是否已经打开
            Dim t As Table = Tables("MYSQL-01_Table2") 
            With Tables("MYSQL-01_Table1")
                
                If .Current Is Nothing Then
                    t.Filter = "False"
                MsgBox(t.Filter)
                
                Else
'                    t.Filter = "tb_sell_main.sellID = '" & .Current("tb_sell_main.sellID") & "'"
                    t.Filter = "sellID = '" & .Current("sellID") & "'"
        MsgBox(t.Filter)
                End If
            End With
       
        End If 
        End If
'        MsgBox(t.Filter)
        '    Case "MYSQL-01_Table2"
        '        '针对MYSQL-01_Table2的代码
        '    Case "表C"
        '        '针对表C的代码
End Select

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:
详细错误信息:
未找到列 [sellID]。

调试显示结果如图,是可以找这个列,为什么老报错找 不到列?

图片点击可在新窗口打开查看此主题相关图片如下:mysql-03.jpg
图片点击可在新窗口打开查看









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


加好友 发短信
等级:超级版主 帖子:109728 积分:558356 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/18 14:37:00 [只看该作者]

哪一个MsgBox之后出错?

Select Case e.Table.Name
    Case "MYSQL-01_Table1"
        '针对MYSQL-01_Table1的代码
        If e.Table.cols.contains("sellID") Then
                MsgBox(1)
        If Forms("MYSQL-01").Opened() Then'一定要判断用于模拟关联表的窗口是否已经打开
            Dim t As Table = Tables("MYSQL-01_Table2") 
            With Tables("MYSQL-01_Table1")
                  MsgBox(2)              
                If .Current Is Nothing Then
                    t.Filter = "False"
                MsgBox(3)
                
                Else
'                    t.Filter = "tb_sell_main.sellID = '" & .Current("tb_sell_main.sellID") & "'"
                    t.Filter = "sellID = '" & .Current("sellID") & "'"
        MsgBox(4)
                End If
                MsgBox(5)
            End With
       
        End If 
        End If
 MsgBox(6)
End Select

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


加好友 发短信
等级:六尾狐 帖子:1357 积分:8996 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/4/18 15:56:00 [只看该作者]

MsgBox(3)出错

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:
详细错误信息:
未找到列 [sellID]。

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


加好友 发短信
等级:超级版主 帖子:109728 积分:558356 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/18 16:02:00 [只看该作者]

t.Filter = "False"这种应该是access的用法,自行上网查查应该怎么用。试试t.Filter = "sellID is null"

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


加好友 发短信
等级:六尾狐 帖子:1357 积分:8996 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/4/18 16:18:00 [只看该作者]

试一下,t.Filter = "sellID is null",百度没找到

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


加好友 发短信
等级:超级版主 帖子:109728 积分:558356 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/18 16:21:00 [只看该作者]

汗,我是说把代码改为这个【t.Filter = "sellID is null"】测试有没有问题。

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


加好友 发短信
等级:六尾狐 帖子:1357 积分:8996 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/4/18 16:33:00 [只看该作者]

t.Filter = "False"改成t.Filter = "sellID is null",报错都一样,还是找不到列,百度MYSQL Filter   没找到

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


加好友 发短信
等级:超级版主 帖子:109728 积分:558356 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/4/18 16:56:00 [只看该作者]

到命令窗口看看这个表格都有什么列

for each c as col in Tables("MYSQL-01_Table2") .cols
output.show(c.name)
next

 回到顶部
总数 58 上一页 1 2 3 4 5 6 下一页