VBAからMySQLのバックエンドDBへ
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
cn.ConnectionString = “MySQL接続文字列”
rs.open “select 略”,cn,adopenkeyset,adlockoptimistic
debug.print rs.recordcount
以下略
が-1になってびっくり
いろいろ調べて
cn.CursorLocation = adUseClient
cn.ConnectionString = “MySQL接続文字列”
でちゃんとcountしてくれました。
ではSQLserverではと
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
cn.ConnectionString = “SQLserver接続文字列”
rs.open “select 略”,cn,adopenkeyset,adlockoptimistic
debug.print rs.recordcount
以下略
はちゃんとcountします。CursorLocationは
書かなくても
cn.CursorLocation = adUseClient と書いても
cn.CursorLocation = adUseServer と書いても同じ
でした。
うーん