Count 속성 예제(VB)
이 예제에서는 Employee 데이터베이스에 두 개의 컬렉션이 있는 Count 속성을 보여 줍니다. 이 속성은 각 컬렉션의 개체 수를 가져오고 이러한 컬렉션을 열거하는 루프의 상한을 설정합니다. Count 속성을 사용하지 않고 이러한 컬렉션을 열거하는 또 다른 방법은 For Each...Next
문을 사용하는 것입니다.
'BeginCountVB
'To integrate this code
'replace the data source and initial catalog values
'in the connection string
Public Sub Main()
On Error GoTo ErrorHandler
' recordset and connection variables
Dim rstEmployees As ADODB.Recordset
Dim Cnxn As ADODB.Connection
Dim strSQLEmployees As String
Dim strCnxn As String
Dim intLoop As Integer
' Open a connection
Set Cnxn = New ADODB.Connection
strCnxn = "Provider='sqloledb';Data Source='MySqlServer';" & _
"Initial Catalog='Northwind';Integrated Security='SSPI';"
Cnxn.Open strCnxn
' Open recordset with data from Employee table
Set rstEmployees = New ADODB.Recordset
strSQLEmployees = "Employee"
'rstEmployees.Open strSQLEmployee, Cnxn, , , adCmdTable
rstEmployees.Open strSQLEmployees, Cnxn, adOpenForwardOnly, adLockReadOnly, adCmdTable
'the above two lines opening the recordset are identical as
'the default values for CursorType and LockType arguments match those specified
' Print information about Fields collection
Debug.Print rstEmployees.Fields.Count & " Fields in Employee"
For intLoop = 0 To rstEmployees.Fields.Count - 1
Debug.Print " " & rstEmployees.Fields(intLoop).Name
Next intLoop
' Print information about Properties collection
Debug.Print rstEmployees.Properties.Count & " Properties in Employee"
For intLoop = 0 To rstEmployees.Properties.Count - 1
Debug.Print " " & rstEmployees.Properties(intLoop).Name
Next intLoop
' clean up
rstEmployees.Close
Cnxn.Close
Set rstEmployees = Nothing
Set Cnxn = Nothing
Exit Sub
ErrorHandler:
' clean up
If Not rstEmployees Is Nothing Then
If rstEmployees.State = adStateOpen Then rstEmployees.Close
End If
Set rstEmployees = Nothing
If Not Cnxn Is Nothing Then
If Cnxn.State = adStateOpen Then Cnxn.Close
End If
Set Cnxn = Nothing
If Err <> 0 Then
MsgBox Err.Source & "-->" & Err.Description, , "Error"
End If
End Sub
'EndCountVB