構建階層式記錄集
下列範例示範如何使用數據成形文法定義父、子及孫 Recordset,以製造不含基礎數據源的階層式 Recordset。
若要建立階層式 Recordset,您必須指定用於 OLE DB 的 Microsoft Data Shaping Service (MSDataShape),而且您可以在 Open 方法的 Connection 物件的連接字符串參數中,明確指定 NONE 作為數據提供者的值。 如需詳細資訊,請參閱 資料成形的必要提供者。
Dim cn As New ADODB.Connection
Dim rsCustomers As New ADODB.Recordset
cn.Open "Provider=MSDataShape;Data Provider=NONE;"
strShape = _
"SHAPE APPEND NEW adInteger AS CustID," & _
" NEW adChar(25) AS FirstName," & _
" NEW adChar(25) AS LastName," & _
" NEW adChar(12) AS SSN," & _
" NEW adChar(50) AS Address," & _
" ((SHAPE APPEND NEW adChar(80) AS VIN_NO," & _
" NEW adInteger AS CustID," & _
" NEW adChar(20) AS BodyColor, " & _
" ((SHAPE APPEND NEW adChar(80) AS VIN_NO," & _
" NEW adChar(20) AS Make, " & _
" NEW adChar(20) AS Model," & _
" NEW adChar(4) AS Year) " & _
" AS VINS RELATE VIN_NO TO VIN_NO))" & _
" AS Vehicles RELATE CustID TO CustID) "
rsCustomers.Open strShape, cn, adOpenStatic, adLockOptimistic, -1
一旦建立 Recordset,就可以填充、操作或保存至檔案。