SQLの実行

Sub SqlExecute()
    Dim db As DAO.Database
    Set db = CurrentDb
    
    Dim sql As String
    sql = "SELECT * FROM T01Prefecture WHERE PREF_CD >= 40"
    
    
    Dim rs As DAO.Recordset
    Set rs = db.OpenRecordset(sql)
    
    Do Until rs.EOF
        Debug.Print rs.Fields("PREF_CD") & " " & rs.Fields("PREF_NAME")
        rs.MoveNext
    Loop
    
    rs.Close
    Set rs = Nothing
    db.Close
    Set db = Nothing
    
End Sub

とあるサイトを参考にプログラミングしてみた。
最後にNothingをしていすることで
意図的にオブジェクトの参照を変えている。


どうしてだ?
VBAは1つのプロシージャが終了しても
メモリを解放しないのかな(Javaガーベジコレクションみたいなもの)?


まだまだ調査が必要だ!