MySQL Connector/ODBC 发行说明
当您使用 ADO API 和 Connector/ODBC 编码时,需要注意一些 MySQL 服务器不支持的默认属性。例如,将 CursorLocation 属性
设置为 adUseServer
会导致 RecordCount 属性
返回 -1。为了获得正确的值,您需要将此属性设置为 adUseClient
,如以下 VB 代码所示
Press CTRL+C to copyDim myconn As New ADODB.Connection Dim myrs As New Recordset Dim mySQL As String Dim myrows As Long myconn.Open "DSN=MyODBCsample" mySQL = "SELECT * from user" myrs.Source = mySQL Set myrs.ActiveConnection = myconn myrs.CursorLocation = adUseClient myrs.Open myrows = myrs.RecordCount myrs.Close myconn.Close
另一种解决方法是使用 SELECT COUNT(*)
语句来获取类似查询的正确行数。
要在 ADO 中查找受特定 SQL 语句影响的行数,请在 ADO execute 方法中使用 RecordsAffected
属性。有关 execute 方法用法的更多信息,请参阅 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdmthcnnexecute.asp。
有关信息,请参阅 ActiveX 数据对象 (ADO) 常见问题解答。