注意双引号的位置 "Create view 查询表 as select …… " Data4.RecordSource = mysql '这里应该是个数据源,而不是单纯一个sql语句 其实你也可以直接用查询,然后放到一个记录集里.这个查询还可以用一个别名表示 set rs=cn.execute("select ...") set Data4.RecordSource =rs.clone
'取得数据记录集,提供您参考。 Public Function LoadDataProcess() Dim LoadSql As String Dim loadRs As New ADODB.Recordset
LoadSql = "select PALLETSN,NAMEPLATE,RATEDPOWER,PACKAGEQTY,MODULEGRADE,ia_002_tabpackageinfo.warehousevoucher,id from iqms.ia_002_tabpackageinfo " + _ "where PALLETSN not in( select packagecode from iqms.ia_002_tabpackagecustfilers)"
If Not loadRs.EOF Then loadRs.MoveFirst Call LoadData(loadRs, Me.MSHFlexGrid1)
Call RevalSn(MSHFlexGrid1, 2) '重置序列号 Call ReValueSelectStatus(MSHFlexGrid1, 1, "0") '设置为未选定状态 Else 'Nothing End IfEnd Function'读取数据 Public Function LoadData(ByVal Rs As ADODB.Recordset, ByVal Mshflex As MSHFlexGrid) Dim i, j As Integer Rs.MoveFirst For i = 1 To Rs.RecordCount
For j = 0 To 5 Mshflex.TextMatrix(i, j + 3) = Rs.Fields(j) Next j
If i = Rs.RecordCount Then
'Mshflex.AddItem Mshflex.Row Else Mshflex.AddItem Mshflex.Row End If
& " from 选课信息表 inner join 课程信息表 on 选课信息表.课程号 = 课程信息表.课程号 " _
& " where 选课信息表.学号 = '" & Text1.Text & "' or 选课信息表.课程号 = '" & DBCombo2.Text & "'"
Data4.RecordSource = mysql
Data4.Refresh老是提示缺少语句结束,帮我看看是怎么回事、
& " from (" & mysql & ") " _
& " where " & Combo1.Text & "='" & Text2.Text & "'"
提示from 字句语法错误。
Data4.RecordSource = mysql '这里应该是个数据源,而不是单纯一个sql语句
其实你也可以直接用查询,然后放到一个记录集里.这个查询还可以用一个别名表示
set rs=cn.execute("select ...")
set Data4.RecordSource =rs.clone
Public Function LoadDataProcess()
Dim LoadSql As String
Dim loadRs As New ADODB.Recordset
LoadSql = "select PALLETSN,NAMEPLATE,RATEDPOWER,PACKAGEQTY,MODULEGRADE,ia_002_tabpackageinfo.warehousevoucher,id from iqms.ia_002_tabpackageinfo " + _
"where PALLETSN not in( select packagecode from iqms.ia_002_tabpackagecustfilers)"
loadRs.Open LoadSql, Conn, adOpenStatic, adLockOptimistic
If Not loadRs.EOF Then
loadRs.MoveFirst
Call LoadData(loadRs, Me.MSHFlexGrid1)
Call RevalSn(MSHFlexGrid1, 2) '重置序列号
Call ReValueSelectStatus(MSHFlexGrid1, 1, "0") '设置为未选定状态
Else
'Nothing
End IfEnd Function'读取数据
Public Function LoadData(ByVal Rs As ADODB.Recordset, ByVal Mshflex As MSHFlexGrid)
Dim i, j As Integer
Rs.MoveFirst
For i = 1 To Rs.RecordCount
For j = 0 To 5
Mshflex.TextMatrix(i, j + 3) = Rs.Fields(j)
Next j
If i = Rs.RecordCount Then
'Mshflex.AddItem Mshflex.Row
Else
Mshflex.AddItem Mshflex.Row
End If
Rs.MoveNext
Next i
End FunctionNote:若是不清楚,欢迎前来咨询。