vb权限管理

abc_2004 2009-03-31 03:28:20
vb+sql2000
数据库内容如下:
项目 功能
-------------------
S_11 0
S_12 1
S_13 1
S_14 0
S_15 0
S_16 0
S_17 0
B_11 0
B_12 1
B_13 1
B_14 1
--------------------
现在我想逐条数据进行对比
---------------------
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.ConnectionString = "Driver={sql server};server=" & sServer & ";uid=sa;pwd=;database=" & logodata & ""
conn.ConnectionTimeout = 20
conn.Open
rs.Open "select * from [表1]", conn, adOpenStatic, adLockReadOnly, adCmdText
While Rs.EOF = False
Select Case Rs.Fields("项目")
Case "s_11"
MDI.S_11.Enabled = IIf(Rs.Fields("功能"), False, True)
Case "s_12"
MDI.S_12.Enabled = IIf(Rs.Fields("功能"), False, True)
Case "s_13"
MDI.S_13.Enabled = IIf(Rs.Fields("功能"), False, True)
End Select
Rs.MoveNext
Wend
Rs.Close
Set Rs = Nothing
-----------------------------
数据连接通过的。就是当case "s_11" 不起作用。我想它当case "s_11" 就是数据库里的 s_11.
请各位大侠帮忙






...全文
81 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
abc_2004 2009-04-01
  • 打赏
  • 举报
回复
各位路过的大侠指点一下。谢谢!
abc_2004 2009-03-31
  • 打赏
  • 举报
回复
是一样的。
当我使用Select Case Rs.Fields("项目")
Case Rs.Fields("功能")
MDI.S_11.Enabled = IIf(Rs.Fields("功能"), False, True)
Case Rs.Fields("功能")
MDI.S_12.Enabled = IIf(Rs.Fields("功能"), False, True)
Case Rs.Fields("功能")
MDI.S_13.Enabled = IIf(Rs.Fields("功能"), False, True)
End Select
时,第一条可以执行,第二条开始就不行了。
其实我是使用逐条数据进行对比。也就是当我的“项目”中对应的“功能”等于0时就是MDI菜单中对应的菜单名称FALSE,如果等于1时就是TURE。
杨哥儿 2009-03-31
  • 打赏
  • 举报
回复
你的比较运算中数据变量类型是一样的吗?不同类型怎么进行比较?
IIF()中也是一样.

1,215

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧