connection.execute(sql) の戻り値ってどうなるの?
ARオブジェクトじゃないと使いづらそうだが。