• ベストアンサー

SQLを発行とは?クエリの作成とは違うのですか?

SQLを発行とは?クエリの作成とは違うのですか? アクセスしかわからない者です。 (SQLServerは無知) SQLを発行とか実行とかの言葉をよく目にしますが アクセスでテーブルを元に選択クエリを作成するのは 俗に言う「SQLを発行」でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

こんにちは。 私は以下のように整理して考えています。 (1)クエリの作成 = DBからデータを抽出するための定義を作成 = SQL作成 (2)クエリの実行 = DBからデータを抽出する操作 = SQLの発行 以上

iwueye
質問者

お礼

私も真似してこの覚え方を使います! 有難うございました。

その他の回答 (1)

回答No.1

Access の中だけで考えると「SQL発行」と言えなくもないかもしれません。 つまり、Access 内で SQL を発行して、それを自分で受け取って処理をする、ということです。 しかし、「SQL 発行」と言った場合、Oracle や SQL Server といったデータベース(通常、ネットワーク上にある)に対してデータ操作を行う場合を指すことがほとんどではないかと思います。 クライアントがデータベースサーバーに SQL を送信し、サーバーは受け取った SQL を構文解釈した上でSQL の指示内容に従ってデータ処理をおこないます。 Access で Oracle や SQL Server のテーブルをリンクし、リンクテーブルに対してクエリを実行することができますが、これは「SQL 発行」とは言わないのではないかと思います。リンクテーブルに対するクエリ実行の場合、Access がテーブルのデータを全件読み込みをし、読み込まれたデータに対してAccess が処理をおこないます。 Access にはパススルークエリというものがありますが、こちらは「SQL 発行」になると思います。パススルークエリの場合、データベースサーバーに SQL が送信され、Access はサーバーで処理された結果をうけとります。 例えば、10000件のテーブルから主キーを指定して1件だけを抽出する場合、リンクテーブルでのクエリを使用する方法ではサーバーからクライアントに10000件のデータが送信されますが、パススルークエリを使用する方法ではサーバーからクライアントに送信されるのは1件だけですみます。

iwueye
質問者

お礼

パススルークエリなら「SQLの発行」という事になるのですね。 Oracle とか SQL Serverなど難しい言葉が出てきたので 調べてから頂いたご回答を理解してみようと思います。

関連するQ&A

専門家に質問してみよう