基礎知識

【超入門】SQLの基礎知識 - プログラミングでデータを扱うには必須

広告:ページ内にてアフィリエイト広告を利用しています。

アプリケーションでレポートや帳票を作成する場合、必要になるのがデータベースです。

データを抽出・加工・登録するような動作をする際にプログラミング言語と合わせてSQLを利用します。

本記事ではプログラミング初心者向けにSQLの基礎知識を簡単に解説しています。

こんな方におすすめ

  • プログラミング初心者
  • SQLの基礎を知りたい
  • データベースを連携したプログラミングをしたい

SQLとは

SQL(エスキューエル)とはデータベースを操作するための言語です。

データベースとは検索や蓄積をしやすく整理した特定のデータの集合体です。データベースにはいくつか種類がありますが、リレーショナルデータベース(RDB)やNoSQLが主流となっています。本記事では詳しく解説しませんがNoSQLではその名の通りSQLを利用しません。

リレーショナルデータベースを管理するソフトウェアをRDBMS(Relational DataBase Management System)と呼びます。

SQLを使うと数百万、数千万件に蓄積されたデータから効率良く操作することが可能です。

SQLで出来る主な操作はこちら

  • レコードの検索(SELECT)
  • レコードの登録(INSERT)
  • レコードの編集(UPDATE)
  • レコードの削除(DELETE)
  • テーブルの作成(CREATE TABLE)
  • テーブルの削除(DROP TABLE)

「会員のログイン情報」「購入情報」「商品情報」「掲示板の投稿」「ToDoリスト」などデータを取り扱う際に、SQLを利用して操作することができます。

RDBMSの種類

RDBMS製品はさまざまな種類があり、用途に応じてどの製品を選ぶかが重要 となります。

以下では主なRDBMSを紹介します。

  • MySQL・・・大規模なWebサイトなどでも広く使われおりオープンソース。WordPressでも使用されている(無償)
  • Oracle Database・・・高い堅牢性を持ち高いシェアを誇る(有償)
  • PostgreSQL・・・膨大なデータの処理や操作が得意で多機能。(無償)
  • SQLite・・・軽量で高速なデータベース。設定不要で自己完結型。(無償)

SQLの種類

SQLは3種類の言語に分類されています。用途に応じて使い分けます。

DML(データ操作言語)

DML(Data Manipulation Language)はデータの追加・更新・削除といった操作を行う際の構文です。

DMLの種類

  • SELECT文・・・・データの検索
  • INSERT文・・・・データの追加
  • UPDATE文・・・・データの更新
  • DELETE文・・・・データの削除

命令文に条件文加えることが可能で「以上」「以下」「等しい」「等しくない」などがあります。

SQL文の中では最も利用頻度が高いのでこれからSQLを使用したい方はしっかり覚えておきましょう。

DDL(データ定義言語)

DDL(Data Definition Language)はテーブルやデータベースの追加・更新・削除といった操作を行う際の構文です。

DDLの種類

  • CREATE文・・・・データベース・テーブルの作成
  • ALTER文・・・・データベース・テーブルの定義内容変更
  • DROP文・・・・データベース・テーブルの削除
  • TRANCATE文・・・・テーブル・データの削除

データベース・テーブルの操作は最初に定義すると操作をする頻度は少ないでしょう。仕様変更や追加・編集が多いシステムの場合はテーブル操作で使うことが多くなるでしょう。

DCL(データ制御言語)

DCL(Data Control Language)はDMLやDDLの利用を制御する操作を行う際の構文です。

DCLの種類

  • GRANT文・・・・ユーザー権限の付与
  • REVOKE文・・・・ユーザー権限の削除
  • BEGIN文・・・・トランザクションを開始
  • COMMIT文・・・・トランザクションを確定
  • ROLLBACK文・・・・トランザクションを取り消し

DCLはデータベースの管理者は覚える必要があります。GRANT、REVOKEはデータベースを操作できるユーザーを追加(変更)した際にどこまで操作可能にするか決めることができます。

トランザクションは複数のSQL文を処理する際にまとめて反映させたいときに利用します。そのためデータの新規追加、更新、削除などを行うときに使うので覚えておきましょう。

SQLを実行しよう

SQL Fiddle

この記事を読んでいる方は初心者だと思われますので、SQL実行環境を用意する時点で難しさを感じるでしょう。

そんな方の為にある便利なサービスが「SQL Fiddle

ウェブブラウザ経由でデータベース自体を作成、SQLの実行まで試すことが可能。

操作がよくわからない場合は上部にある「View Sample Fiddle」をクリックするとサンプルが表示されますのでいろいろ実行してみましょう。利用は無料です。

Dokoql



また、PC,モバイル端末でSQLを利用可能な「Dokoql」も覚えたSQLを試してみるには最適ですので是非使ってみてください。こちらも無料です。

RDBMSのメリット・デメリット

便利で広く利用されているリレーショナルデータベースですが良いところばかりではありません。

RDBMSのメリット・デメリットは以下の通り。

メリット

  • SQLにより複雑な操作が可能
  • データ処理の一貫性が保証されている

デメリット

  • データが大規模になると処理速度が低下する
  • 拡張(スケールアウト)コストが高い

RDBMSはACID 特性により設計されているため、トランザクションは必ず「完全な実行」もしくは「実行されない」のいづれかとなり、データの一貫性が保証されています

大規模なデータになると処理速度が遅くなることや、拡張できるように設計されていないところがデメリットとなります。とはいえ通常のシステムでは充分利用できますので安心してください。

まとめ

本記事ではSQLの基礎知識ということでデータベース関連について解説しました。

SQLを利用したプログラミング学習を手軽に学ぶのであれば、Saumurai ENGINEER Plusがオススメです。

最短30秒で登録完了

公式サイトをチェック

月額3,278円(税込)

  • この記事を書いた人

ケー

異業種から独学でプログラマーになった2児のパパ。 社内SE~ネットワーク周りの保守からWebプログラマーに。PHP+MySQL+JavaScriptのWebアプリ開発がメイン。ある業界では超メジャーなサービスにも携わっています。リモートワークで自宅勤務の会社員です。

-基礎知識