【Access】SQL(ADO)を実行する際の「Open」と「Execute」の違いについて

データベース

エンジニアの仕事を始めて2ヶ月目の僕ですが、今月から初めてAccessのVBAに触れて四苦八苦していますw

Accessの需要は低いものだと勝手に思っていましたが、「昔から使ってる」「開発費用が安い」などの理由で、意外と開発の依頼は多いみたいですね…!

 

余談はさておき、AccessでSQL文(ADO)を実行する際、Openメソッドを使う場合とExecuteメソッドを使う場合があると思います。

正しく使わないとエラーになるケースもありますが、間違っていても案外動いたりするため、間違えて記述されているケースもあるみたいです。

僕も両者の違いがよくわからず、調べても難しい言葉で書かれていたりして、理解するのに結構苦労しましたw

他にも同じように悩む方がいらっしゃるかもしれませんので、今回はAccessでSQLを実行する際の「Open」と「Execute」の違いについて、噛み砕いて説明したいと思います。

 

スポンサーリンク

 

AccessでSQLを実行する際の「Open」と「Execute」の違い

結論からいうと、SELECT文の場合はOpen、それ以外のINSERT・UPDATE・DERETE文などはExecuteで実行すれば問題ありません。

Recordsetは値を受け取るものなので、値を返さない(DB側で処理されるだけの)SQL文は、OpenではなくExecuteで実行するのが正しいみたいです。

なのでSELECT文以外をOpenで実行するのは、本来であれば間違っているわけですね。
(ALTERやCREATEなんかもExecuteを使います)

 

場合によっては全部Openで実行しても動作しますが、コードを書き換えていくうちに動かなくなったりもします。
(恐らくレコードセットをCloseする段階でエラーが出るかと思います)

なので余計なエラーを避けるためにも、OpenとExecuteはきちんと使い分けるようにしましょう\(^o^)/

よく読まれている記事

半年で15キロ痩せた 1

突然ですが、実は僕…   昔は89キロの、かなりのおデブちゃんでした(´;ω;)   まぁたまにブログ内でも書いているので、知っている方は知っているかもしれませんがw ただこの時ダ ...

2

僕は「インドア系自由人になろうよ」というタイトルで、このブログを書いています! その理由は、   家にいながら自由に生きる   というのを、僕自身の理想の生き方としているからです! ...

猫でも年収1億円 3

最近猫動画ばかり見てしまう、どうも僕です\(^o^)/ 猫って世界中で愛されていますし、人間にとっても大きな価値を持つ生き物ですよね! その中でもたくさんの人から愛される猫が、   店の看板 ...

退職代行 4

  今すぐ退職したいのに、上司がなかなか辞めさせてくれない。 そういう状況に悩まされる人は、今の日本には結構多いと思います。   会社側の都合でいつまでも引き延ばされたり、半ば強引 ...

パスタで痩せた 5

GWで実家に帰った際、家族から   「なんか痩せたね!」 「ダイエット始めたの?」   とか言われた、どうも僕です\(^o^)/   ただ、自分でも痩せてきた感覚はありま ...

6

  雑記ブログ開始から苦節半年、、、 (短い)     この記事で、ちょうど300記事となりましたー!!   わーパチパチ∩(´∀`∩)   &nbs ...

ハムスターの臭い対策 7

ハムスターはペットの中でも、割と臭いの少ない動物です。 室内飼いもしやすいので、同じ生活空間で過ごす方も多いと思います。 とはいえ全くの無臭ではないので、「ハムスターも意外と臭かった!」と感じる方も、 ...

8

実は僕…カロリーメイトが大好きなんです。 どれくらい好きかっていうと、会社の引き出しを開けると、そこには必ず大量のカロリーメイトが入っているくらい…w そして毎朝出勤すると、朝食としてカロリーメイトだ ...

9

  ブログとは楽しんで書くものなので、久々に超どうでもいい記事を書いてみます\(^o^)/ 今回の話は表題の通り、イスラム教の留学生が断食中カレー食ってた話ですw 何の学びにもならない、本当 ...

お酒をやめてよかったこと 10

今回は、、、     お酒をやめてよかったこと     について、ちょっと書いてみたいと思います\(^o^)/ 僕は以前お酒が大好きで、常に机の下に20〜30本 ...

-プログラミング

Copyright© インドア系自由人になろうよ , 2020 All Rights Reserved.