Foxtable(狐表)用户栏目专家坐堂 → 关于数据转换


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

主题:关于数据转换

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
关于数据转换  发帖心情 Post By:2015/7/23 16:02:00 [显示全部帖子]

请问,我在开发时是使用ACCESS作为数据库。开发完毕后转为SQL,但数据库的SQLFind等语句都无法正常使用了。

这是怎么回事啊?

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
  发帖心情 Post By:2015/7/23 16:11:00 [显示全部帖子]

我的项目是登陆成功后就会立刻进行权限判断。
权限判断是通过Datatables的SQLFind来查询是否有符合条件的记录。如果有则返回逻辑型值1,否则返回0.

但用ACCESS数据库是完全可以执行的。但改用SQL后返回的值始终是0。

郁闷啊。

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
  发帖心情 Post By:2015/7/23 16:15:00 [显示全部帖子]

已经通过合并数据把所有数据都合并到SQL里了。
也进SQL查看过,数据没问题。都有的。

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
  发帖心情 Post By:2015/7/23 16:18:00 [显示全部帖子]

权限判断函数:
Dim 菜单名 As String = Args(0)
Dim 结果 As Boolean
If Vars("userid") IsNot Nothing Then
    Dim dr As DataRow = DataTables("菜单表").SQLFind("菜单名称 = '" & 菜单名 & "' And 工号 Like '%" & Vars("userid") & "%'")
MessageBox.Show(菜单名 & Vars("userid") & Vars("username"))
    If dr IsNot Nothing Then
        结果 = 1
        Vars("动作") = 菜单名
    Else
        结果 = 0
    End If
End If
Return 结果

菜单按钮代码:
If Functions.Execute("权限判断",e.SplitButton.Name) = 0 Then
    MainTable = Tables("主页")
    MessageBox.Show("权限未开放","错误",MessageBoxButtons.OK,MessageBoxIcon.Error)
Else
    BaseMainForm.Text = "KTS物料管理系统 - 【预算浏览】"
    Functions.Execute("浏览数据表","预算表")    
End If

我的设置是这样的。用ACCESS数据库,代码正常运行及返回数据都正确。用SQL数据库的话权限判断函数无论如何,返回的都是0

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
  发帖心情 Post By:2015/7/23 16:25:00 [显示全部帖子]

程序是全部执行完毕的。没有报错。但是正确的查询结果应该是返回1的。
用ACCESS是返回1,但用SQL就返回0了。

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
  发帖心情 Post By:2015/7/23 16:26:00 [显示全部帖子]

发现用Find是正确返回1,但用SQLFind就不行。

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
  发帖心情 Post By:2015/7/23 16:33:00 [显示全部帖子]

弹出的内容都是正确的结果

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


加好友 发短信
等级:二尾狐 帖子:597 积分:4974 威望:0 精华:0 注册:2012/12/27 12:34:00
  发帖心情 Post By:2015/7/23 16:53:00 [显示全部帖子]

这段代码在命令窗口中测试结果为True

 回到顶部