cn.Open strCn ' Create a Shape command. Dim strSh As String strSh = "SHAPE {SELECT * FROM [Customers]} AS Customers " & _ "APPEND ({SELECT [Orders].CustomerID,[Orders].OrderID,[Orders].OrderDate,[Orders].EmployeeID,[Employees].FirstName,[Employees].LastName FROM [Orders],[Employees] WHERE [Orders].EmployeeID=[Employees].EmployeeID} AS Orders RELATE " & _ "CustomerID TO CustomerID) AS Orders "
Do While Not rs.EOF List1.AddItem rs.Fields("CustomerID").Value rs.MoveNext Loop End SubPrivate Sub List1_Click() Dim rs2 As Variant If List1.ListIndex <> -1 Then rs.MoveFirst rs.Find "CustomerID='" & List1.Text & "'" rs2 = rs("Orders") List2.Clear Do While Not rs2.EOF List2.AddItem rs2.Fields("OrderID").Value & vbTab & rs2.Fields("OrderDate").Value & vbTab & rs2.Fields("LastName").Value & " " & rs2.Fields("FirstName").Value rs2.MoveNext Loop End If
End SubGood Luck
格式: select 字段列表,from 表名 where 条件 order by 条件groud 分组 你可以参考msdn的说明。
Private cn As New ADODB.Connection
Private rs As New ADODB.Recordset
Private Sub Command1_Click()
End SubPrivate Sub Form_Load()
Dim strCn As String
strCn = "Provider=MSDataShape.1;Data Source=Nwind;" & _
"Connect Timeout=15;Data Provider=MSDASQL"
cn.Open strCn
' Create a Shape command.
Dim strSh As String
strSh = "SHAPE {SELECT * FROM [Customers]} AS Customers " & _
"APPEND ({SELECT [Orders].CustomerID,[Orders].OrderID,[Orders].OrderDate,[Orders].EmployeeID,[Employees].FirstName,[Employees].LastName FROM [Orders],[Employees] WHERE [Orders].EmployeeID=[Employees].EmployeeID} AS Orders RELATE " & _
"CustomerID TO CustomerID) AS Orders "
rs.StayInSync = False
rs.Open strSh, cn, adOpenStatic, adLockReadOnly
Do While Not rs.EOF
List1.AddItem rs.Fields("CustomerID").Value
rs.MoveNext
Loop
End SubPrivate Sub List1_Click()
Dim rs2 As Variant
If List1.ListIndex <> -1 Then
rs.MoveFirst
rs.Find "CustomerID='" & List1.Text & "'"
rs2 = rs("Orders")
List2.Clear
Do While Not rs2.EOF
List2.AddItem rs2.Fields("OrderID").Value & vbTab & rs2.Fields("OrderDate").Value & vbTab & rs2.Fields("LastName").Value & " " & rs2.Fields("FirstName").Value
rs2.MoveNext
Loop
End If
End SubGood Luck
你可以参考msdn的说明。