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.
请各位大侠帮忙
数据库内容如下:
项目 功能
-------------------
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.
请各位大侠帮忙
IIF()中也是一样.
当我使用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。