Oracle入門:サンプルスキーマとは?SCOTTスキーマを使った学習環境の整え方

SQL

Oracleデータベースを学習する際、最も効果的な方法の一つが「サンプルスキーマ」を使った実践です。
この記事では、サンプルスキーマの基礎知識から代表的なスキーマの種類、インストール方法までを図を交えてわかりやすく解説します。

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?


🔰 1. サンプルスキーマとは?

サンプルスキーマとは、学習やテスト、検証目的でOracleが提供しているデータベース構造一式のことです。

  • 実際の業務に近い構造
  • 事前にデータが登録済み
  • SQLの練習や教材との連携に最適

📘【図解】スキーマとその中身

(SCOTT)
├── テーブル:EMP(社員情報)
├── テーブル:DEPT(部門情報)
├── テーブル:BONUS(賞与情報)
└── テーブル:SALGRADE(給与グレード)

スキーマとは、「ユーザー単位で管理されるデータ構造のまとまり」と考えてください。


💡 2. なぜサンプルスキーマが重要なのか?

理由内容
✅ 安全に学べる本番データを壊す心配がなく、誤操作も安心
✅ 現実に近い構造で学習可人事・営業・購買などの実際の業務に近いスキーマ構成
✅ 教材との整合性が高い書籍やWeb教材で多くの例がサンプルスキーマを前提にしている

📚 3. Oracleで使える代表的なサンプルスキーマ

Oracleでは複数のサンプルスキーマが公式に用意されています。

スキーマ名特徴と用途
SCOTT最も基本的。社員と部門のデータで構成
HR人事部門向けのモデルデータ。入社日や給与などが豊富
OE注文処理、顧客・商品管理などの業務に対応

✅ SCOTTスキーマが初心者に最適な理由

  • テーブル数が少なくシンプル(EMP, DEPT など)
  • 他の教材との連携が取りやすい
  • SELECT、JOIN、サブクエリなどあらゆる構文を練習しやすい

🛠 4. SCOTTスキーマのインストール手順

Oracle Databaseインストール直後の環境には、SCOTTスキーマが存在しません。
以下の手順で簡単にインストールできます。


🔧 手順A:非CDB環境(旧構成)の場合

-- SYSDBAユーザーでログインし、以下を実行
@?/rdbms/admin/utlsampl.sql

?$ORACLE_HOME を意味しています。
これにより、SCOTT ユーザーと以下のテーブルが作成されます。


🔧 手順B:CDB + PDB 環境の場合(12c以降)

  1. CDB$ROOT から目的のPDBに接続します。
ALTER SESSION SET CONTAINER = PDB1;

または

sqlplus sys/password@PDB1 AS SYSDBA
  1. PDB接続後にスクリプトを実行します。
@?/rdbms/admin/utlsampl.sql

🗃 作成されるデータ例

テーブル名説明
EMP社員情報
DEPT部門情報
BONUS賞与情報
SALGRADE給与グレード階層

SCOTTのパスワードは TIGER に設定されます。


🧪 5. 接続確認とテスト実行

スキーマ導入後、以下で接続を確認できます。

-- SCOTTスキーマへ接続
CONNECT scott/tiger@PDB1

-- テーブル一覧表示
SELECT table_name FROM user_tables;

🧱 6. SCOTTスキーマで学べるSQLスキル一覧

SQL機能学べる内容例
SELECT基本的なデータ取得
WHERE条件指定によるフィルタリング
ORDER BY並び替え
JOIN部門と社員を結合して表示
GROUP BYグループ単位での集計
サブクエリ集約関数やEXISTSなどの使用例

📘【図解】JOIN例(社員と部門)

SELECT e.ename, d.dname
FROM emp e
JOIN dept d ON e.deptno = d.deptno;

┌────────┬───────────┐
│ ename │ dname │
├────────┼───────────┤
│ SMITH │ ACCOUNTING│
│ ALLEN │ SALES │
└────────┴───────────┘

✅ 7. まとめ

  • Oracleの学習はサンプルスキーマから始めるのが鉄板
  • 特にSCOTTスキーマは初学者にとって最も実践的
  • utlsampl.sql スクリプトで簡単に導入可能
  • CDB構成ではPDBに切り替えてから実行が必要


[参考]
Databaseサンプル・スキーマ

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?

コメント

タイトルとURLをコピーしました