我试图在我的表中显示几个数据,我使用内部连接来显示数据。
下面是我的代码来显示这些数据(在SQLYog中工作)
SELECT mahasiswa.NPM, mahasiswa.NamaMhs, mahasiswa.Jurusan,
mahasiswa.grup,mahasiswa.ta, bayar_lab.persen, bayar_dpp.persen
FROM bayar_dpp INNER JOIN bayar_lab ON bayar_dpp.NPM = bayar_lab.NPM
INNER JOIN mahasiswa ON bayar_lab.NPM = mahasiswa.NPM
ORDER BY mahasiswa.NPM下面是我在VB6上的代码,它将在VSFlexGrid上显示这些数据
注意:"TampilGrid“函数是执行我所做的查询
Private Sub TampilGrid(ByVal SQLnya As String)
Grid.Rows = 1
Call AksesRS(SQLnya)
While Not rs.EOF
Grid.Rows = Grid.Rows + 1
Grid.TextMatrix(Grid.Rows - 1, 0) = rs.Fields(0)
Grid.TextMatrix(Grid.Rows - 1, 1) = rs.Fields(1)
Grid.TextMatrix(Grid.Rows - 1, 2) = rs.Fields(2)
Grid.TextMatrix(Grid.Rows - 1, 3) = rs.Fields(3)
Grid.TextMatrix(Grid.Rows - 1, 4) = rs.Fields(4)
lb_persendpp.Caption = Val(rs.Fields(5))
lb_persenlab.Caption = Val(rs.Fields(6))
rs.MoveNext
Wend
End Sub但是发生了一个错误。它显示了
“在集合中找不到与所请求的名称或序号相对应的项”,特别是在rs.Fields(3)中,但是在rs.Fields(2)没有错误之前,rs.Fields(0)是不存在的。
你能告诉我怎么回事吗?
发布于 2016-12-24 10:02:03
尝试使用最佳实践,
rs("empName")。试试下面的代码。
Dim index as Integer
Grid.Rows = rs.RecordCount
index = 1
While Not rs.EOF
If Not IsNull(rs.Fields(0)) Then Grid.TextMatrix(index, 0) = rs.Fields(0)
If Not IsNull(rs.Fields(1)) Then Grid.TextMatrix(index, 1) = rs.Fields(1)
If Not IsNull(rs.Fields(2)) Then Grid.TextMatrix(index, 2) = rs.Fields(2)
If Not IsNull(rs.Fields(3)) Then Grid.TextMatrix(index, 3) = rs.Fields(3)
If Not IsNull(rs.Fields(4)) Then Grid.TextMatrix(index, 4) = rs.Fields(4)
If Not IsNull(rs.Fields(5)) Then lb_persendpp.Caption = Val(rs.Fields(5))
If Not IsNull(rs.Fields(6)) Then lb_persenlab.Caption = Val(rs.Fields(6))
index = index + 1
rs.MoveNext
Wendhttps://stackoverflow.com/questions/41310571
复制相似问题