静的SQLとの比較とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 静的SQLとの比較の意味・解説 

静的SQLとの比較

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/19 20:02 UTC 版)

ストアドプロシージャ」の記事における「静的SQLとの比較」の解説

オーバーヘッド ストアドプロシージャ文は直接データベース格納されるため、ソフトウェアアプリケーションインライン動的SQLクエリデータベース送信する状況通常必要となるコンパイルオーバーヘッドのすべてまたは一部削除することができる。(ただし、ほとんどのデータベースシステムは、動的SQL文の反復的なコンパイル避けるために、ステートメントキャッシュや他の方法実装している)。また、プリコンパイルされたSQLある程度回避できる一方でSQL文のすべての引数コンパイル時に提供されないため、最適な実行プラン作成するための複雑さが増す。特定のデータベース実装構成によっては、ストアドプロシージャ一般的なクエリユーザー定義関数比較した場合性能に差が出ることがあるネットワークトラフィック回避 ストアドプロシージャ大きな利点は、データベースエンジン内で直接実行できることである。本番システムでは、プロシージャ専用データベースサーバー実行されアクセスされるデータ直接アクセスできるのが一般的である。この利点は、ネットワーク通信コストを完全に回避できることである。これは、一連の複雑なSQL文の場合に、より重要になるビジネスロジックカプセル化 ストアドプロシージャは、プログラマビジネスロジックAPIとしてデータベース埋め込むことができるため、データ管理簡素化しクライアントプログラム別の場所でロジックエンコードする必要性低減することができる。その結果欠陥のあるクライアントプログラムによるデータ破損可能性低くすることができる。データベースシステムは、ストアドプロシージャ助け借りてデータ整合性一貫性確保することができる。 アクセス権委譲 多くシステムでは、ストアドプロシージャに、そのプロシージャ実行するユーザー直接持っていないデータベースへのアクセス与えることができる。 SQLインジェクション攻撃からの保護 ストアドプロシージャは、インジェクション攻撃から保護するために使用することができる。ストアドプロシージャパラメータは、攻撃者SQLコマンド挿入しても、データとして扱われるまた、DBMSによっては、パラメータの型をチェックするものもある。しかし、ストアドプロシージャ入力されデータ使って動的SQL生成する場合適切な予防措置取られない限りSQLインジェクション危険性があることに変わりはない。

※この「静的SQLとの比較」の解説は、「ストアドプロシージャ」の解説の一部です。
「静的SQLとの比較」を含む「ストアドプロシージャ」の記事については、「ストアドプロシージャ」の概要を参照ください。

ウィキペディア小見出し辞書の「静的SQLとの比較」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「静的SQLとの比較」の関連用語

静的SQLとの比較のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



静的SQLとの比較のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのストアドプロシージャ (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS