Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

VB6 ADODB.Recordset RecordCount गुण हमेशा -1 देता है

दरअसल CursorLocation इस मामले में एक प्रमुख भूमिका निभाता है। rs.CursorLocation = adUseClient . का इस्तेमाल करें कर्सर स्थान सेट करने के लिए और कोशिश करें।

    Set rs = New ADODB.Recordset
    rs.CursorLocation = adUseClient
    Dim DbConnectionString As String

    DbConnectionString = mSqlProvider & _
                            mSqlHost


    Set mDbConnection = New ADODB.Connection
    mDbConnection.CursorLocation = adUseServer

    Call mDbConnection.Open(DbConnectionString)

    If mDbConnection.State = adStateOpen Then
        Debug.Print (" Database is open")
        ' Initialise the command object
        Set mCmd = New ADODB.Command
        mCmd.ActiveConnection = mDbConnection

        mCmd.CommandText = "select * from myTestTable"
        mCmd.CommandType = adCmdText

        Set rs = mCmd.Execute

        Debug.Print rs.RecordCount  ' This should now return the right value.
        Debug.Print rs.Fields(0)   ' returns correct data for first row, first col
        Debug.Print rs.Fields(1)   ' returns correct data for first row, 2nd col
        Debug.Print rs.Fields(2)   ' returns correct data for first row, 3rd col

    End If

End Sub


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. आंतरिक जुड़ाव के साथ SQL अद्यतन क्वेरी सिंटैक्स

  2. एसक्यूएल सर्वर (डेटाटाइम प्रकार) में डेटाटाइम संग्रहीत करते समय, यह किस प्रारूप में संग्रहीत करता है?

  3. संख्याओं की श्रेणी के आधार पर तालिका में एकाधिक पंक्तियों को कैसे सम्मिलित करें

  4. एमएस एसक्यूएल सर्वर 2008 में संग्रहीत प्रक्रिया के पैरामीटर के रूप में सी # डेटाटेबल पास करना

  5. SQL सर्वर 2017 में एक दृश्य बनाएँ