web-dev-qa-db-ja.com

アドホッククエリとは何ですか?

SQLに関する本を読んでいます。その本にはAd Hoc Queryという用語がありますが、これはわかりません。

アドホッククエリとは正確には何ですか?

157
zihado

アドホックは「この目的のため」のラテン語です。 「オンザフライ」クエリまたは「ジャストソー」クエリと呼ぶことができます。必要な場所に大まかに入力するだけの種類のSQLクエリです

var newSqlQuery = "SELECT * FROM table WHERE id = " + myId;

...myIdの値に応じて、コード行が実行されるたびにまったく異なるクエリになります。アドホッククエリの反対は、ストアドプロシージャなどの定義済みクエリです。このクエリでは、テーブルから選択するという一般的な目的(たとえば)に対して単一のクエリを作成し、IDを変数として渡します。

206
David Hedlund

アドホッククエリは、クエリが発行される前に決定できないクエリです。必要に応じて情報を取得するために作成され、通常はデスクトップ常駐クエリツールによって構築される動的に構築されたSQLで構成されます。

チェック: http://www.learn.geekinterview.com/data-warehouse/dw-basics/what-is-an-ad-hoc-query.html

23
haltunbay

また、アドホッククエリがSQLインジェクション攻撃に対して脆弱であることを追加します。使用を避け、代わりにパラメーター化されたSQLを使用してください( JavaのPreparedStatementなど )。

2
xli

アドホッククエリは、クエリが発行される前に決定できないクエリです。必要に応じて情報を取得するために作成され、通常はデスクトップ常駐クエリツールによって構築される動的に構築されたSQLで構成されます。アドホッククエリはコンピューターやデータベースマネージャーには存在しませんが、データユーザーのニーズに応じて動的に作成されます。

SQLでは、アドホッククエリは、値が何らかの変数に依存する緩やかに型指定されたコマンド/クエリです。コマンドが実行されるたびに、変数の値に応じて結果が異なります。事前に決定することはできず、通常は動的プログラミングSQLクエリの下にあります。アドホッククエリは短命であり、実行時に作成されます。

1
Ketan Anand

アドホッククエリは、定期的に必要とされていない、まだ定義されていないクエリであるため、レポートやクエリの一般的なセットには含まれていません

0
user3134258