目次(まとめ)

◾️ データを管理することに特化したデータベース管理システムに命令を出すときに使用するSQL文

◾️ 1つの処理を実行するための複数のSQL文をまとめて、データベース管理システムに保存する

◾️ 参考文献


こんにちは、みっちゃんです。

今回の記事では、データベース管理システム(DBMS: Data Base Management System)から必要なデータを取り出す際に使用する「SQL (Structured Query Language) 文」と、それらを一括してDBMSに保存する手続きであり「ストアドプロシージャ」について紹介します。

データを管理することに特化したデータベース管理システムに命令を出すときに使用するSQL文

大規模なデータを管理するためのシステムを「データベース管理システム(DBMS: Data Base Management System)」といいます。

イメージとしては、みなさんが日頃つかっている表計算ソフトウェア(Excelなど)を大きくしたものといった感じです。

例えば、"学籍番号"、"氏名"、"性別"、"出身地"、"得意科目" といった項目のデータを40人クラスの中で集める程度であれば、表計算ソフトウェアで十分ですが、データ数が増え、複雑になってくると、表計算ソフトウェアでは対応できません。

そこで「データベース管理システム(DBMS)」が用いられます。

このシステムに対して、データを取り出すなどの操作を行うためには「SQL (Structured Query Language) 文」を使用します。

例えば、"学籍番号"、"氏名"、"性別"、"出身地"、"得意科目" といった項目からなる「学生表」という表データがDBMSに保存されていて、"出身地" が "東京" の学生の "学籍番号" が欲しい場合には、以下のようにSQL文を記述します。

例:SELECT 学籍番号 FROM 学生表 WHERE 出身地=東京

1つの処理を実行するための複数のSQL文をまとめて、データベース管理システムに保存する

いま、SQL文を10個記述して、1つの処理が終了するような場合を考えます。

例えば、その処理がとても珍しい処理の場合には、SQL文を10個記述すればいいかもしれませんが、よく出てくる処理(毎日実行する必要がある処理など)の場合には、毎回SQL文を10個記述するのは、非効率です。

また、SQL文をDBMSというシステムに、ネットワーク経由で送るような場合には、ネットワークに対する負荷が、多かれ少なかれ生じます。

そこで、1つの処理を実行するための複数のSQL文をまとめて、さらに、DBMS側に保存しておく「ストアドプロシージャ」が便利です。

上に述べたような欠点を解消できるだけでなく、SQL文をまとめる段階で、手続きの最適化が行われるため、処理速度の向上も期待できます。

参考文献

きたみりゅうじ「キタミ式イラストIT塾 応用情報技術者」技術評論社