区分 環境情報科目
ディプロマ・ポリシーとの関係

カリキュラム・ポリシーとの関係

カリキュラム全体の中でのこの科目の位置づけ

科目の目的
この科目の目的は、Oracle Database を用いた学習環境の構築と基本的な運用管理を実践し、応用的な SQL とデータベース設計の知識を組み合わせて、与えられた要件に対応するデータベースを実装できる力を養うことである。まず、インストールと初期設定、CDB・PDB の構成、SQL*Plus による接続、起動・停止、ユーザー・ロール・権限の管理を学び、操作の対象と管理上の役割を理解する。
そのうえで、置換変数、NULL 関数、MERGE、マルチテーブル INSERT、一時表、外部表、日時データとタイムゾーンを扱い、要件に応じた SQL の使い分けを学ぶ。また、バックアップとリカバリ、実行計画、索引設計、オプティマイザ統計を通して、データの保全と検索性能に関する基礎的な判断力を養う。さらに、正規化と ER図を用いた設計からテーブル作成、制約設定、データ抽出、要件変更に伴うテーブル変更までを演習し、整合性と保守性を意識した実装力を身に付ける。

到達目標
本科目では、データベースの構築・運用、SQL による処理、要件に基づく設計・実装を関連付けて理解し、次の内容を自ら実行し、その結果や設計理由を説明できることを到達目標とする。第一に、Oracle Database の基本構成と CDB・PDB の役割を説明し、導入・初期設定、SQL*Plus による接続、起動・停止を実行できることを目標とする。あわせて、システム権限とオブジェクト権限を区別し、ユーザー・ロールの作成と権限の付与・取消しを行えること、学習用環境でバックアップとリカバリを実践できることを目指す。第二に、SQL*Plus の基本操作と置換変数を利用し、NULL 処理、MERGE、マルチテーブル INSERT、一時表・外部表、日時データを目的に応じて扱えることを目標とする。また、EXPLAIN PLAN や AUTOTRACE によって実行計画を確認し、索引やオプティマイザ統計と SQL の実行との関係を基礎的な用語で説明できることを目指す。第三に、与えられた業務要件から属性とエンティティを抽出し、正規化、関係の多重度、主キー・外部キーを考慮した ER図を作成できることを目標とする。その設計をテーブルと制約として実装し、ダミーデータの登録と複数テーブルからの抽出によって妥当性を確認できること、さらに状況の変化に合わせて設計とテーブルを変更できることを最終的な到達目標とする。
科目の概要
本科目では、「Oracle Database の構築・運用管理」「SQL の応用」「データベースの設計・実装」の三つを柱として、全30回の授業を展開する。DB管理と SQL の応用を学んだ後、二つの状況設定に基づく設計・実装演習を通して、それまでの知識を統合する。
DB管理では、導入と基本操作に加えて、権限管理、データ保全、実行計画と検索性能を扱う。SQL の応用では、置換変数やデータ操作に関する構文、表の各種機能を中心に、既習の SQL を補強する。設計・実装では、要件定義から概念設計・論理設計・物理設計へ進む流れを理解し、ER図と実際のテーブル構造を対応付ける。
授業の進行は、第1回~第8回を構築と基本管理、第9回~第20回を応用 SQL と運用管理、第21回~第30回を設計・実装と総合演習とする。第8回、第20回、第30回には、各段階の学習内容を確認するまとめ・総合演習を配置する。
第1回~第8回では、DBMS と Oracle Database の学習内容を確認し、インストーラーのダウンロード、インストールと初期設定、CDB・PDB の作成、SQL*Plus による接続を学ぶ。続いて、Windows サービスとプロセス、CDB・PDB の起動・停止、ユーザーとロールの作成、権限管理を扱い、第8回で接続・起動・停止・ユーザー/ロール作成を復習する。
第9回~第20回では、SQL*Plus と DESCRIBE、置換変数と DEFINE、NULL 関数、MERGE、マルチテーブル INSERT、一時表、外部表を学ぶ。第16回~第18回には、バックアップとリカバリ、実行計画、索引設計とオプティマイザ統計を扱う。第19回で日時データ・タイムゾーン・期間データ型を学び、第20回で SQL の応用内容を総合的に確認する。
第21回~第30回では、DB設計の流れ、正規化、ER図の記述方法を学ぶ。第23回~第25回の演習①では、状況設定から属性の洗い出し、関係の整理、ER図の作成、テーブル作成、データ登録と抽出を行う。第26回~第29回の演習②では、別の状況設定で同じ工程を実践し、さらに状況変化に伴う設計の見直しとテーブル変更を行う。第30回では、DB管理、応用 SQL、DB設計・実装を総合的に復習する。

科目のキーワード
DB構築・基本管理(第1回~第8回):Oracle Database Free、DBCA、CDB、PDB、SQL*Plus、SYSDBA、リスナー、STARTUP、SHUTDOWN、ユーザー、ロール、GRANT、REVOKE。SQL の応用(第9回~第15回・第19回~第20回):DESCRIBE、置換変数、DEFINE、NVL、NVL2、NULLIF、COALESCE、MERGE、INSERT ALL/FIRST、一時表、外部表、SQL*Loader、ORACLE_DATAPUMP、TIMESTAMP、タイムゾーン、INTERVAL。運用管理(第16回~第18回):RMAN、バックアップ、RESTORE、RECOVER、REDOログ、EXPLAIN PLAN、AUTOTRACE、索引設計、オプティマイザ統計。DB設計・実装(第21回~第30回):要件定義、概念設計、論理設計、物理設計、正規化、ER図、エンティティ、属性、リレーションシップ、主キー、外部キー、CREATE TABLE、CONSTRAINT、JOIN、ALTER TABLE。
授業の展開方法
本科目では、Oracleデータベースに対する実務的な管理・運用力を養うことを目的としている。毎回、Wordで作成したオリジナルテキスト(PDF版)を配布し、その内容に沿って授業を進める。授業ではまず用語や構造、管理操作の役割と使い方を説明し、その後に演習を行い、学生が実際のデータベース管理作業を通して学修する。総合演習回では、それまでに学修した知識を用いて、Oracleデータベースの構築・設定・管理を実践する能力を育成する。授業では、各自が持参するノートパソコンを使用することを求める。授業や演習終了後、その内容に関する小テストを実施する。最後に小テストの解答・解説を行い終了する。
授業1コマの基本構成は、授業の最初に復習を5~7分行い、その後、3から4個ある各コマ主題細目について20分程度で解説し、合計約70分の授業を行う。その後、10分で小テストおよび解説を行い、最後に予復習の説明を3分程度行って授業を終わる。授業終了後は、次回授業までに復習を行っておくことが求められる。テキストの解説や練習問題を見直すだけでなく、ChatGPTを活用し、テキストの内容を読みこませて練習問題を作成し、自分で解いて理解を深める。さらに、その解答・解説を確認することで、より確実に知識を定着させる。また、授業で扱った管理操作や設定内容を実際に確認・再現することで、Oracle運用力を身に着ける。

オフィス・アワー
渡辺謙:【前期】
環境データベース概論
環境データベースⅡ
環境プログラミングⅣ(永続化技法)
全科目:木曜5限
【後期】
環境データベースⅠ
環境データベースⅢ
コンピュータ・アーキテクチャ論
全科目:木曜5限
神馬一博:【前期】
Web環境システム概論木曜5限
【後期】
Web環境システム開発Ⅰ(Webアプリケーションの実装)水4限・5限
Web環境システム開発Ⅱ(クライアント再度・プログラミング)木5限

科目コード UC4013
学年・期 2年・後期
科目名 環境データベースⅢ
単位数 4
授業形態 演習
必修・選択 必修
学習時間
前提とする科目
展開科目
関連資格
担当教員名 渡辺謙・神馬一博
回主題コマシラバス項目内容教材・教具
1 DBMSとダウンロード 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第1回は、本科目で扱う構築・運用管理、SQL の応用、設計・実装の関係を把握し、実機演習の準備を始める回である。既習の SQL を実行する側の視点から、その実行環境を用意して管理する側の視点へ学習を広げる。Oracle Database の学習版と授業で使用する環境を確認し、適切なインストーラーを準備することで、第2回の導入と第3回のデータベース作成へ進むための出発点を整える。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① 授業全体の流れ ② Oracle DBの学習版 ③ インストーラーのダウンロード
細目レベル ① 環境データベースⅠ・Ⅱで学んだ SQL、表、制約、ユーザなどを振り返り、DBMS がデータの保存・検索・更新と利用者からの要求の処理を担うことを整理する。全30回の学習内容を、構築・管理、応用 SQL、設計・実装の三つの観点から確認し、前半の環境構築が後半の演習を支える関係を捉える。授業の進め方、演習結果の記録方法、予復習の取り組み方も確認する。例えば、観測データを検索する場面を取り上げ、検索文を書く作業、その文を実行する環境を用意する作業、観測項目に合った表を設計する作業を分けて考える。履修者は、それぞれが授業のどの段階に対応するかを説明し、自分が既にできることと新たに学ぶことを整理する。本細目で理解すべき範囲は、既習のデータ操作と本科目の管理・設計の学習との関係を説明し、全体の流れと各段階の目的を把握できる段階まで。
② Oracle Database Free を学習に用いる意義を確認し、データベース本体、接続用のクライアント、授業で利用する教材の役割を区別する。製品名や画面だけで判断せず、授業で指定された版と対象 OS を確認して使用することを学ぶ。また、学習版にも利用可能な資源や機能の条件があることを知り、授業資料の環境条件と自分の端末の状態を照合する。演習では、授業で使用する製品の情報と端末の情報を並べ、どの項目を照合すれば導入の可否を判断できるかを検討する。製品の説明にある名称を写すだけでなく、データの保存と SQL の入力をどのソフトウェアが担当するのかを図にし、学習環境の全体像を把握する。本細目で理解すべき範囲は、Oracle Database の学習版の位置付けと使用環境の条件を理解し、授業で用いる製品と版を識別できる段階まで。
③ Oracle の公式配布元で、授業指定の製品、版、OS に対応するインストーラーを確認する。ダウンロードするファイルと保存先を選び、取得後にファイル名、拡張子、容量などを確認して、次回の導入作業で使用できるよう整理する。圧縮ファイルを取得する場合は展開後の配置も把握し、ダウンロード完了とインストール完了が異なることを説明する。取得したファイルを次回すぐに選択できるよう、保存先までのたどり方を確認し、同じ名前のファイルを複数取得した場合も使用するものを特定する。演習では、配布ページの情報と保存されたファイルを対応付け、別の OS 向けのファイルなどを選んでいないかを確認する。本細目で理解すべき範囲は、指定環境に対応するインストーラーを取得し、保存場所と導入前の準備状況を確認できる段階まで。
キーワード ① DBMS ② Oracle Database Free ③ 学習環境 ④ インストーラー ⑤ ダウンロード
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗DBMS、データベース本体、接続用クライアントの役割をそれぞれ説明すること。全30回の学習の流れを整理し、取得したインストーラーの製品名・版・対象 OS・保存場所を記録しておくこと。また、観測データを保存して検索する例を一つ挙げ、データの内容を考える作業、保存先を用意する作業、検索文を書く作業が授業のどの段階に対応するかを整理すること。ソフトウェアを取得できたかどうかは、保存先でファイルを確認して判断し、まだ準備できていない項目があれば、その内容と次回までに確認すべきことを記すこと。用語の説明には自分の例を添えること。
〖予習〗次回のインストール手順を読み、端末の OS、必要な空き容量、実行権限などを授業資料と照合すること。Oracle Base、SID、文字セットという用語を確認し、意味の分からない項目を整理しておくこと。さらに、手順に登場する設定項目を拾い出し、入力する値が既に指定されている項目と、自分の端末で確認する項目を分けること。取得したファイルを開く場所までの手順を文章にし、次回の開始時に迷わず選択できるよう準備すること。調べた用語は説明を写すだけでなく、どの設定画面で何のために使われるかを予想し、授業中に確かめたい点を二つ以上まとめておくこと。

2 インストールと初期設定 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第2回は、第1回で準備したインストーラーを用いて Oracle Database の学習環境を導入し、設定内容を理解する回である。操作手順に従うだけでなく、ファイルの配置、データベースやインスタンスの識別、文字データの扱いを設定項目と結び付ける。本回で記録する設定値は、第3回の構成理解と第4回の接続に必要な情報となり、その後の管理操作を再現するための基礎となる。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① インストールの実行と初期設定 ② 設定用語の解説① ③ 設定用語の解説②
細目レベル ① 授業で指定されたインストーラーを実行し、導入先、管理用パスワードなど、画面に表示される設定項目の意味を確認しながら導入を進める。使用する版によって設定画面や自動作成される構成が異なるため、授業資料と実際の画面を対応付けて作業する。完了メッセージやログの所在を確認し、導入先と接続に必要な情報を記録する。パスワードそのものは提出用の記録に含めない。演習では、開始前、設定入力時、完了後に何を確認するかを分け、各工程の確認事項を短い記録にまとめる。想定と異なる表示が出た場合は、画面の文言と実行した工程を照合し、手順のどの位置で問題が生じたかを説明することで、導入結果を根拠に基づいて報告する力を養う。本細目で理解すべき範囲は、指定された手順で導入と初期設定を行い、完了状況と主要な設定値を確認できる段階まで。
② Oracle Base とディレクトリを中心に、ソフトウェアや関連ファイルの配置を理解する。Oracle Base を Oracle 関連ファイルの配置基点として捉え、ソフトウェアの導入先やデータファイルの配置先と区別する。画面や資料に示されたパスを読み、ドライブ、親ディレクトリ、下位ディレクトリの関係を確認する。設定値を一律に暗記するのではなく、自分の環境の配置を記録して説明する。演習では、資料中のパスを自分の端末のパスへ読み替え、共通する構造と環境ごとに異なる部分を示す。また、ダウンロードしたファイルの保存先と、実行後にソフトウェアが配置される先を比較し、ファイルの所在を確かめる際にどちらを見る必要があるかを判断する。本細目で理解すべき範囲は、Oracle Base と各ディレクトリの役割を区別し、指定されたパスと実際の配置先を対応付けられる段階まで。
③ グローバル・データベース名、SID、文字セットを中心に、データベースの識別と文字の保存に関わる設定を理解する。グローバル・データベース名とインスタンスを識別する SID を同じものとして扱わず、設定画面や構成例でそれぞれの対象を確かめる。文字セットは文字データの表現に関わる設定であり、表示用の書体とは異なることを確認する。演習では、各用語について「何を識別するか」「何の扱いを決めるか」という観点から説明文を作る。同じように見える名称を一括して DB名と呼ぶことを避け、設定画面の欄名と記録した値を対応付ける。日本語を含むデータを扱う場面も想定し、文字の保存方式を確認する意味を考える。本細目で理解すべき範囲は、グローバル・データベース名、SID、文字セットの目的を説明し、授業環境で設定された値を読み取れる段階まで。
キーワード ① Oracle Base ② ディレクトリ ③ グローバル・データベース名 ④ SID ⑤ 文字セット
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗導入手順、完了状況、導入先、主要な設定値をまとめること。設定用語を「ファイル配置」「識別」「文字の扱い」に分け、自分の環境での値と役割を説明すること。作業が完了していない場合は、停止した工程と表示メッセージを記録すること。加えて、インストーラーを保存した場所と導入先の違いを図にし、資料に示された例と自分の環境で異なる部分を示すこと。各設定値について、何を識別する情報か、どのファイルの配置に関わるか、どの場面で参照するかを記すこと。完了した場合も、判断の根拠となった表示や確認結果を残し、手順を見直したときに作業の流れを再現できる形に整理すること。
〖予習〗次回に向けて、インスタンスとデータベース、CDB と PDB という用語を調べること。導入時にどの構成が自動作成されたかを授業資料で確認し、ソフトウェアの導入とデータベースの作成の違いを考えておくこと。また、インスタンス、CDB、PDB の関係について、現時点で理解している内容を簡単な図にすること。導入時に記録した名前や配置先を図のどこに対応付けられるか考え、分からない部分には質問を書き添えること。次回の作成手順を読み、作成前に決める事項と作成後に確認する事項をそれぞれ挙げること。ツールを起動することと作成が完了することの違いも整理しておくこと。

3 データベースの作成 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第3回は、導入済みの Oracle Database について、インスタンスと保存されるデータの関係、および CDB・PDB の構成を理解する回である。第2回で確認した設定値を実際の構成と対応付け、データベース作成の手順と結果を把握する。本回は、第4回以降に接続先や起動・停止の対象を正しく選ぶための基盤となり、ユーザ作成時にどのコンテナを操作するかを判断する学習にもつながる。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① データベースの構成 ② コンテナデータベースの作成 ③ プラガブルデータベースの作成
細目レベル ① インスタンスをメモリ領域と処理を担うプロセスの組合せ、データベースをデータファイルなどの集合として捉え、両者の役割を区別する。マルチテナントアーキテクチャでは、CDB の中に CDBルート、PDB のひな型となるシード、利用対象の PDB があることを構成図で確認する。PDB ごとに独立したインスタンスを起動する構成ではないことも、共有される処理基盤との関係から理解する。演習では、構成要素の名称を図へ書き込み、SQL を受け付けて処理する部分とデータを保持する部分を関連付ける。一つの CDB に複数の PDB がある例を読み、接続先の違いが利用対象の違いになることを確認することで、後続の管理操作に必要な構成の見方を身に付ける。本細目で理解すべき範囲は、インスタンスとデータベースの役割、および CDBルート・シード・PDB の基本的な関係を図で説明できる段階まで。
② CDB を用意する際に必要となる名前、ファイル配置、管理者情報などを確認し、DBCA の役割とデータベース作成の流れを学ぶ。授業環境の作成手順に沿って、指定値と作成結果を照合する。インストール時に CDB が自動作成される環境では、その工程と結果を確認し、追加作成の可否や使用する方法を授業資料に従って扱う。既存の構成を把握せずに再作成する操作は行わない。演習では、作成前に指定した値と作成後に確認できた値を一覧にし、設定がどの構成要素に反映されたかを確かめる。作成ツールの役割と、完成した CDB が担う役割を分けて説明し、ツールを起動することとデータベースが利用可能になることを混同せずに理解する。本細目で理解すべき範囲は、授業環境における CDB の作成工程と主要設定を理解し、作成された CDB の構成を確認できる段階まで。
③ PDB がアプリケーションの表やユーザを収容する単位となることを理解し、作成先の CDB、PDB 名、管理者、ファイル配置などを確認する。授業で指定された方法により、シードを基に PDB を用意する流れを学び、作成後に名前と状態を確認する。PDB が存在することと、利用できる状態で開かれていることを区別し、具体的なオープン操作は第5回の学習へつなげる。演習では、CDB と PDB の名前を並べ、どの CDB にどの PDB を用意したかを記録する。作成処理の完了を示す情報と、作成された対象の状態を示す情報を区別し、確認した根拠を説明する。後続の接続演習で利用する対象を構成図上でも特定できるようにする。本細目で理解すべき範囲は、指定条件に沿った PDB 作成の手順を理解し、作成先・名前・作成後の状態を確認できる段階まで。
キーワード ① DBCA ② マルチテナントアーキテクチャ ③ インスタンス ④ CDB ⑤ PDB
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗インスタンス、CDBルート、シード、PDB の関係を図にまとめること。授業で確認した CDB・PDB の名前と作成方法を記録し、導入時の自動作成と授業中の作成操作を区別して説明すること。さらに、作成前に指定した値と作成後に確認した値を並べ、意図した対象が用意されたと判断した理由を説明すること。CDB の中に複数の PDB を描いた例を作り、それぞれを区別するために何を確認するかを書き添えること。作成操作を見学した場合も、自分が実行した場合と同様に工程と結果を整理し、接続先として利用する対象を構成図上で特定できるようにすること。
〖予習〗SQL*Plus の用途と CONNECT・EXIT の役割を確認すること。ローカル接続とネットワークを介した接続の違いを考え、次回使用するホスト名、ポート番号、PDB のサービス名を授業資料で確認しておくこと。さらに、接続を行う利用者、接続先の端末、対象となる PDB を図で表し、用意する情報をそれぞれ対応付けること。管理用の接続と一般的な利用のための接続では、目的がどのように異なるかを考えること。資料に載っている接続文を読み、名称の意味が分からない箇所を整理すること。次回は接続成功の表示だけでなく接続対象の確認も必要になる理由を、自分の言葉で説明できるようにすること。

4 SQL*Plusによる接続 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第4回は、第3回で把握した CDB・PDB に対して SQL*Plus から接続し、操作対象を確認する回である。CDBルートへの管理用ローカル接続と、PDB のサービスを指定するネットワーク接続を区別することで、認証方法、権限、接続先の関係を整理する。本回の接続操作は、起動・停止、ユーザ・ロール管理、さらに第9回以降の SQL*Plus による学習に共通する前提となる。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① SQL*Plus ② CDBルートへのローカル接続 ③ PDBへのリモート接続
細目レベル ① SQL*Plus を Oracle Database に接続して SQL や管理用の命令を実行するクライアントとして捉える。起動時に接続する方法と、未接続で起動してから CONNECT する方法を確認し、プロンプト、入力、実行結果、エラーメッセージを区別する。接続後はユーザとコンテナを確認し、既習の簡単な SELECT 文を実行する。EXIT による終了とデータベース自体の停止の違いも整理する。演習では、起動直後、接続後、SQL 実行後、終了時の画面を見比べ、各段階で入力する内容と得られる情報を整理する。操作に成功したことだけでなく、どのユーザでどこへ接続した状態で SQL を実行したかを説明し、後から同じ操作を再現できる記録を作る。本細目で理解すべき範囲は、SQL*Plus を起動して接続・簡単な SQL の実行・終了を行い、現在の接続対象を確認できる段階まで。
② データベースを動かしている端末上で、授業指定の OS 認証条件を確認し、管理接続を行う。CONNECT / AS SYSDBA を例に、パスワードを入力しない接続にも OS 側の権限が前提となること、SYSDBA が管理操作のための権限であることを理解する。接続後は SHOW USER や SHOW CON_NAME などでユーザと CDBルートを確認し、一般ユーザの接続と区別する。演習では、接続文に含まれる記号や指定を一つずつ読み、接続方法と管理権限の指定を分けて説明する。接続に成功しても想定したコンテナであるとは判断せず、確認コマンドの出力を根拠として操作対象を特定する。管理操作を始める前に確認を行う手順を定着させる。本細目で理解すべき範囲は、必要な OS 側の条件と SYSDBA の役割を理解し、指定環境で CDBルートへのローカル管理接続を確認できる段階まで。
③ ホスト名、ポート番号、サービス名を指定する接続方法を学び、クライアントからリスナーを経由して対象 PDB へ接続する流れを確認する。サービス名は PDB 名と同一とは限らないため、資料に示された接続情報を用いる。同一端末からでもネットワーク経由の方式を確認できることを理解し、認証情報の誤りと接続先情報の誤りを分けて考える。演習では、接続情報を役割別に区切って読み、どの端末のどのサービスへ要求を送るかを図に表す。接続できない例では、使用した情報と授業資料の記載を比較し、入力値を修正する理由を説明する。ネットワーク経由の方式と、端末が物理的に別であるかどうかを分けて捉える。本細目で理解すべき範囲は、ホスト・ポート・サービス名とリスナーの役割を説明し、指定された PDB への接続と接続先の確認を行える段階まで。
キーワード ① SQL*Plus ② SYSDBA ③ リスナー ④ CONNECT ⑤ EXIT
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗CDBルートへのローカル接続と PDB への接続について、接続情報、認証方法、接続後の確認結果を比較すること。実行した CONNECT の構成を説明し、EXIT が DB停止ではない理由も整理すること。パスワードは記録に載せないこと。加えて、接続操作を「使用する情報」「入力した文」「確認したユーザとコンテナ」に分けて一覧にすること。接続できなかった例があれば、最初に表示された内容、見直した情報、修正後の結果を記録すること。実行する端末と接続する対象を図に描き、ローカル接続とネットワーク経由の接続をどの情報から区別したかを説明すること。確認手順を省略せずに整理すること。
〖予習〗Windows サービスとプロセスの違いを確認し、授業環境の Oracle 関連サービス名を資料で調べること。STARTUP、SHUTDOWN、PDB の OPEN・CLOSE がそれぞれどの対象を操作するかを考えておくこと。また、CDB全体を停止したい場合と、一つの PDB だけを利用できない状態にしたい場合を比較し、それぞれの対象範囲を図示すること。サービスが動いているという情報だけで対象 PDB が利用できると判断してよいかを考え、確認したい事項を書き出すこと。次回の操作資料に目を通し、操作前と操作後に確認する内容を分け、状態の変化を記録するための表を用意しておくこと。

5 DBの起動と停止 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第5回は、SQL*Plus で管理対象へ接続する技能を用いて、Oracle Database の起動と停止を学ぶ回である。Windows 上のサービス・プロセス、CDB の状態、PDB の開閉を分けて理解し、どの操作がどの範囲に影響するかを把握する。本回で身に付ける状態確認と操作前後の比較は、以後の管理演習を支えるとともに、第16回のバックアップとリカバリを学ぶ際の前提となる。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① Windowsサービスとプロセス ② CDBの停止と起動 ③ PDBのクローズとオープン
細目レベル ① Windows のサービス管理画面とプロセスの表示を用いて、Oracle の実行状態を確認する。サービスを OS が管理する実行単位、プロセスを実際に動作するプログラムの単位として捉え、インスタンスに関わるサービスとリスナーに関わるサービスを区別する。サービスが実行中であることだけでは対象 PDB の利用可否までは判断できないことを、SQL*Plus での状態確認と対応付ける。演習では、サービス名、実行状態、関連する処理の役割を対応付け、リスナーとデータベースを同一のものとして扱わないようにする。接続できない状況を考える際も、どの状態を OS の画面で調べ、どの状態を SQL*Plus で調べるかを整理し、確認結果の読み方を身に付ける。本細目で理解すべき範囲は、Oracle 関連サービスとプロセスの役割を区別し、OS 側の状態と DB側の状態を別々に確認できる段階まで。
② CDBルートへの管理接続を確認したうえで、SHUTDOWN IMMEDIATE と STARTUP を中心に停止・起動の手順を学ぶ。停止が接続中の利用者にも影響することを理解し、実行前後のメッセージと接続状態を記録する。起動時の NOMOUNT・MOUNT・OPEN を基本的な状態として整理し、インスタンスの起動とデータベースのオープンを区別する。演習では、実行前の対象確認、停止、停止結果の確認、起動、起動結果の確認という順序で操作記録を作る。単にコマンドを列挙するだけでなく、次の操作へ進めると判断した根拠を示し、操作の目的と状態の変化を一連の流れとして説明できることを重視する。本細目で理解すべき範囲は、CDB を対象とする基本的な停止・起動を実行し、主要な状態と操作結果を説明できる段階まで。
③ CDB が稼働していても PDB は個別に閉じられることを理解し、ALTER PLUGGABLE DATABASE による CLOSE・OPEN の操作を確認する。実行前に対象 PDB 名と現在のコンテナを確かめ、操作前後の開閉状態を比較する。CDB全体の停止と PDB一つのクローズの影響範囲を区別し、PDB の状態が接続や SQL の実行に関係することを把握する。演習では、対象 PDB の操作前後の状態と接続確認の結果を並べ、何が変わったかを文章で説明する。他の PDB も含む構成図を用いて操作の対象範囲を示し、CDB を止める必要がある場面と、特定の PDB のみを閉じればよい場面を基本的な条件から考える。本細目で理解すべき範囲は、指定された PDB のクローズとオープンを行い、CDB の稼働状態と PDB の開閉状態を区別して確認できる段階まで。
キーワード ① Windowsサービス ② プロセス ③ STARTUP ④ SHUTDOWN ⑤ ALTER PLUGGABLE DATABASE
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗CDB の停止・起動と PDB のクローズ・オープンを、操作対象、必要な接続、実行文、実行後の状態に分けて整理すること。サービスの実行状態だけでは PDB の利用可否を判断できない理由を説明すること。さらに、授業で行った操作を順に並べ、各段階で次へ進めると判断した根拠を記すこと。CDB が稼働している場合に PDB がどのような状態を取り得るかを整理し、接続確認の結果と対応付けること。操作対象を取り違えた例を想定し、どの利用範囲に影響するかを説明すること。作業終了時に指定状態へ戻したことを確認した方法も、実行文とともに記録すること。
〖予習〗次回のユーザ作成に向けて、ユーザ名とパスワードによる認証、ログインを認める権限、表に対する操作権限の違いを確認すること。CREATE USER、GRANT、REVOKE の目的を一文ずつまとめておくこと。また、ユーザを作成する管理者と、作成後に接続する利用者を分けて図に描くこと。利用者に「接続だけを認める」「指定された表の参照を認める」という二つの要求を用意し、同じ設定でよいかを考えること。授業資料から権限を確認する一覧の例を探し、どの情報が見られるかを予想すること。認証が成功することと目的の操作が許可されることを区別して説明できるよう準備すること。

6 ユーザの作成と権限 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第6回は、利用可能になった PDB に学習用ユーザを作成し、必要な操作を許可する仕組みを学ぶ回である。環境データベースⅡのユーザ・権限の知識を、接続コンテナと実際の操作結果を意識して確認する。認証と権限付与を区別し、付与した内容を一覧で確かめることで、管理操作と一般利用者の操作を結び付ける。第7回のロールによる権限の集約へ進む土台となる。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① ユーザ作成とパスワード ② ユーザへの権限付与 ③ 権限一覧
細目レベル ① 対象 PDB と管理権限を確認し、CREATE USER によって学習用のローカルユーザを作成する。ユーザ名とパスワードの役割を理解し、管理者の認証情報と一般ユーザの認証情報を分けて扱う。CDBルートと PDB では作成対象の範囲が異なることに触れ、本演習では指定 PDB 内のユーザを扱う。ユーザが作成済みでも、それだけでログインが許可されるわけではないことを確認する。演習では、作成を行う管理者と作成された一般ユーザを区別した作業記録を作り、それぞれが実行した操作を分けて示す。ユーザ名を作ること、認証を行うこと、接続やデータ操作を許可することを順に整理し、接続できなかった場合に確認すべき条件を考える。本細目で理解すべき範囲は、指定 PDB に学習用ユーザを作成し、認証情報の役割とユーザ作成・接続許可の違いを説明できる段階まで。
② GRANT により CREATE SESSION などの必要な権限を付与し、作成したユーザで接続して操作結果を確認する。特定の表を参照する権限を例に、データベース上の操作を認める権限と、対象オブジェクトに対する権限の違いを捉える。付与前・付与後・REVOKE による取消し後を比較し、必要な操作に対応する権限を選ぶ。演習では、参照だけを認めたい場合などの小さな要求を読み取り、必要となる権限と確認用の操作を先に決める。権限を与える側の実行結果と、受け取る側で実際に操作した結果を対応付け、設定した内容が意図に合っているかを両方の立場から確かめる。本細目で理解すべき範囲は、基本的な権限の付与と取消しを行い、認められる操作の変化をユーザ側から確認できる段階まで。
③ 権限を記憶だけで判断せず、データディクショナリを参照して確認する方法を学ぶ。USER_SYS_PRIVS では自分に付与されたシステム権限、USER_TAB_PRIVS_RECD では受け取ったオブジェクト権限を確認し、権限名や対象を読む。SESSION_PRIVS では現在有効なシステム権限を確認し、各一覧の対象範囲が同じではないことを理解する。演習では、一覧に表示された権限名を、直前に実行した付与文や取消し文と照合する。表示が予想と異なる場合には、一覧が示す対象と自分が調べたい対象が一致しているかを見直す。確認に使った一覧名、読み取った内容、判断したことを記録し、設定の根拠を説明する。本細目で理解すべき範囲は、代表的な権限一覧の用途を区別し、演習で付与・取消しした権限と一覧の表示内容を対応付けられる段階まで。
キーワード ① CREATE USER ② GRANT ③ REVOKE ④ システム権限 ⑤ オブジェクト権限
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗作成したユーザ、付与した権限、確認した操作結果を対応付けてまとめること。ユーザ作成だけでは接続できない理由と、権限の取消しによって操作結果が変わる理由を説明すること。権限一覧ごとの確認対象も整理すること。さらに、参照を許可する前、許可した後、取り消した後の三つの状態について、利用者側で何ができたかを比較すること。管理者が行った設定と利用者が行った確認を別々に記録し、権限名と操作結果を結び付けること。予想と違う表示があれば、どの一覧を用いて何を調べたかを示すこと。設定が目的に合っていたかを、実行成功の表示だけに頼らず説明できるようにまとめること。
〖予習〗複数ユーザに同じ権限を一人ずつ付与する場合、変更や確認にどのような手間が生じるかを考えること。次回のロールについて、ユーザや権限そのものとの違い、CREATE ROLE の役割を資料で確認しておくこと。さらに、三人の利用者に同じ表の参照を許可する例を作り、個別に付与する方法で必要となる管理作業を列挙すること。その後で利用条件が変わった場合に、どこを確認し直す必要があるかを考えること。ロールを用いた関係を仮の図にし、ユーザ、ロール、権限を別の要素として描くこと。直接付与とロールを介した付与の違いについて、次回確認したい点を二つ以上記しておくこと。

7 ロールの作成と権限 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第7回は、第6回で扱った権限をロールにまとめ、複数の利用者へ適用する管理方法を学ぶ回である。システム権限とオブジェクト権限の違いを再確認し、ユーザへの直接付与とロールを介した付与を比較する。誰に何を許可しているかを関係図と実行結果の両面から理解することで、権限設定の見通しをよくする。本回は、第8回のユーザ・ロール作成を含む総合演習につながる。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① システム権限とオブジェクト権限 ② ロールの作成 ③ ロールへの権限付与
細目レベル ① CREATE SESSION などのシステム権限と、特定の表に対する SELECT などのオブジェクト権限を比較する。権限名だけでなく、操作対象が指定されているか、どの範囲の操作を許可するかに注目して GRANT 文を読む。権限の種類と付与経路は別の観点であり、直接付与された権限とロール経由で利用する権限を区別して整理する。演習では、接続を許可する要求と特定の表を読む要求を比較し、どちらの種類の権限が必要かを理由とともに説明する。付与先がユーザかロールかだけで権限の種類を決めず、許可される操作そのものを見ることを重視し、設定文を要求に対応付けて読み取る力を養う。本細目で理解すべき範囲は、システム権限とオブジェクト権限を操作対象から分類し、基本的な付与文と付与経路を説明できる段階まで。
② ロールを複数の権限をまとめるための単位として理解し、授業用 PDB で CREATE ROLE による作成を行う。ユーザは接続の主体、ロールは権限のまとまりであることを確認し、作成しただけでは権限が含まれていないことを把握する。参照担当などの役割を例に、ロール名、必要な権限、付与先ユーザを整理してから設定へ進む。演習では、同じ作業を担当する複数の利用者を想定し、共通して必要な権限を一つのまとまりに整理する。ロールを作る前に役割を文章で定め、後から権限を追加する際にもその目的に合っているかを確認する。作成したロールと付与予定のユーザを図で表し、管理上の関係を明確にする。本細目で理解すべき範囲は、ユーザとロールの役割を区別し、指定された管理目的に対応する基本的なロールを作成できる段階まで。
③ ロールに必要な権限を付与し、そのロールをユーザへ付与する二段階の設定を行う。ユーザのセッションで SET ROLE による有効化の切替えを確認し、操作結果との関係を調べる。権限をロールから取り消す場合と、ロールをユーザから取り消す場合を比較する。同じ権限が直接付与など別経路でも与えられているときは、単一経路の取消しだけでは操作が禁止されないことを理解する。演習では、直接付与とロール経由の付与を別の線で図示し、どこを取り消したかを明示する。操作結果が変わらない場合も、実行文が無効だったとすぐに判断せず、残っている付与経路や現在有効なロールを確認する。設定の構造とユーザの実行結果を結び付けて検証する。本細目で理解すべき範囲は、権限・ロール・ユーザの関係を設定して確認し、有効化と取消しが操作可能範囲に与える影響を説明できる段階まで。
キーワード ① CREATE ROLE ② GRANT ③ REVOKE ④ SET ROLE ⑤ ロール
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗権限からロール、ロールからユーザへの関係を図にし、実行した付与文と取消し文を対応付けること。直接付与とロール経由の付与が重なる例を考え、取消し後も操作できる場合に何を確認すべきかを整理すること。また、ロールを作成しただけの状態、権限を含めた状態、ユーザへ付与した状態を順に示し、各段階で何が設定済みかを説明すること。ロールの有効化を切り替えた際の結果を記録し、予想と一致したかを確認すること。権限をロールから取り消す場合とロールをユーザから取り消す場合は、図上で変更した箇所を示すこと。操作が可能な理由を付与経路から説明できるよう整理すること。
〖予習〗第8回の総まとめに向けて、接続、CDB・PDB の状態変更、ユーザ作成、権限付与、ロール作成の手順を一覧にすること。各操作で必要となる接続先、ユーザ、確認コマンドを記入し、不明な部分を洗い出しておくこと。加えて、参照担当の利用者を用意する例を一つ作り、必要なユーザ、ロール、権限、検証用の操作を整理すること。どの順序で設定すればよいかを考え、設定が正しいことを利用者側で確かめる方法も書くこと。接続できない場合と、接続後に表を読めない場合を分け、それぞれ最初に調べる情報を挙げること。自力で説明できない手順は印を付け、総まとめで重点的に確認すること。

8 DB管理総まとめ 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第8回は、第1回~第7回で学んだ DB管理を一連の作業として確認する踊り場コマである。接続、起動・停止、ユーザ・ロール作成を個別に覚える段階から、現在の状態と要求を判断して必要な操作を選ぶ段階へ進む。接続先や権限の取り違えを演習結果から振り返り、第9回以降の SQL*Plus と応用 SQL の学習に安定して取り組めるよう、基本管理の理解を定着させる。

渡部亮太,舛井智行,岡野平八郎,峯岸隆一,日比野峻佑,相川潔 『Oracleの基本 〜データベース入門から設計/運用の初歩まで』、技術評論社、2022
コマ主題細目 ① DBへの接続 ② DBの起動/停止 ③ ユーザ/ロール作成演習
細目レベル ① 与えられた接続条件を読み、CDBルートへのローカル管理接続と PDB への接続を選んで実行する。ユーザ、コンテナ、接続に用いた情報を記録し、成功したかどうかだけでなく意図した対象に接続できたかを確認する。接続できない例では、ホスト・ポート・サービス名、DB やリスナーの状態、認証情報を順に見直し、既習範囲で原因を切り分ける。演習では、接続条件を読み取ってから実行文を用意し、接続後に得た情報を条件と照合するまでを一つの作業とする。誤った接続例については、見直した項目と修正の根拠を記録し、同じ結果を得るために必要な確認事項を他者にも説明できる形にまとめる。本細目で理解すべき範囲は、指定条件に応じた接続方式を選び、接続先を確認するとともに基本的な接続不備を説明できる段階まで。
② CDB と PDB の現在の状態を確認し、演習で指示された停止・起動またはクローズ・オープンを行う。操作の順序、管理接続、対象名を自分で整理してから実行し、実行後の状態を確認する。CDB全体を止める操作と PDB だけを閉じる操作を比較し、必要以上の範囲を操作しない判断を学ぶ。終了時には授業で指定された利用可能な状態へ戻す。演習では、指定された最終状態から逆に必要な操作を考え、既にその状態にある場合も含めて手順を整理する。コマンドを順番どおりに実行することだけを目的にせず、各段階の確認結果に応じて次の操作を選ぶ。作業前後の状態を図や一覧にまとめ、変更した範囲を示す。本細目で理解すべき範囲は、対象と現在の状態に応じた起動・停止の手順を組み立て、結果確認と指定状態への復帰を行える段階まで。
③ 参照担当などの簡単な利用要件から、必要なユーザ、ロール、権限を整理して設定する。管理者側の作成・付与だけで完了とせず、対象ユーザで接続し、許可された操作と許可されていない操作を確認する。意図と結果が異なる場合は、権限一覧や付与経路を調べ、設定を修正して再確認する。操作結果と設定理由を記録し、個々のコマンドを一連の管理手順として結び付ける。演習では、設定担当者が想定した操作と一般ユーザでの検証結果を並べ、条件を満たしたかを項目ごとに判定する。誤りがあればユーザ、ロール、権限の関係を図で見直し、修正後に同じ条件で再確認する。一連の作業を通して、要求から設定、検証へ進む管理の流れを定着させる。本細目で理解すべき範囲は、小規模な利用要件に応じてユーザとロールを設定し、権限による操作の可否を検証して説明できる段階まで。
キーワード ① SQL*Plus ② STARTUP ③ SHUTDOWN ④ ユーザ ⑤ ロール
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗演習結果を「要求」「実行した操作」「確認結果」「修正点」に分けて整理すること。誤った接続先や権限設定があった場合は、正しい文を書くだけでなく、事前にどの情報を確認すれば防げたかを説明すること。さらに、設定が正しくできた問題も見直し、他の方法ではなくその接続や操作を選んだ理由を記すこと。ユーザとロールの関係を図示し、許可された操作と許可されていない操作の検証結果を対応付けること。状態変更を行った問題では、開始時と終了時の CDB・PDB の状態を並べて示すこと。一連の演習から、次に同じ要求を受けたときに確認する順序を自分の手順としてまとめること。
〖予習〗次回の SQL*Plus の学習に向けて、これまで使用した命令を SQL 文と SQL*Plus コマンドに分けてみること。表の列名、データ型、NULL の可否という項目を復習し、DESCRIBE で何を確認できるかを調べておくこと。また、列名が分からないときと、列に保存された値を調べたいときの二つの場面を想定し、必要な情報の違いを説明すること。既習の表について、列名、データ型、NULL の可否を自分で思い出して書き、資料と照合すること。これまで使った SELECT、CONNECT、SET などを目的別に分け、入力を終えて実行する方法も確認すること。分類に迷った命令は次回の質問として整理しておくこと。

9 SQL*PlusとDESCRIBE 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第9回は、管理操作の道具として使用してきた SQL*Plus を、SQL を実行・確認するための学習環境として使い直す回である。基本操作、SQL 文とクライアント側コマンドの区別、DESCRIBE による表定義の確認を整理する。表構造を調べてから SQL を記述し、実行結果を読み取る手順を身に付けることで、第10回の置換変数と、その後の応用的なデータ操作の基礎を整える。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① SQL*Plusの基本操作 ② SQL文とSQL*Plusコマンド ③ DESCRIBEによる表定義の確認
細目レベル ① 接続済みの SQL*Plus で SQL 文を入力し、実行、結果確認、再実行の流れを練習する。複数行の入力と SQL バッファの役割を確認し、LIST や / を用いて保持されている内容と再実行の関係を理解する。SET LINESIZE や SET PAGESIZE を例に表示設定を変更し、画面上の見え方を調整しても表のデータ自体は変更されないことを確認する。演習では、一つの SELECT 文を使い、入力した内容、バッファに残っている内容、画面に表示された結果を順に確認する。再実行の前に何が保持されているかを調べ、意図した文を実行できたかを説明する。表示幅などを変えた場合には、変化した表示と変化していないデータを整理する。本細目で理解すべき範囲は、SQL の入力・実行・内容確認・再実行と基本的な表示設定を行い、データ操作と表示調整を区別できる段階まで。
② SELECT などデータベース側で処理される SQL 文と、SET や DESCRIBE など SQL*Plus が解釈するコマンドを区別する。通常の SQL 文をセミコロンで実行する方法と、SQL*Plus コマンドを改行で実行する方法を比較し、コマンドには通常セミコロンを付けないことを確認する。入力の終了と SQL バッファの再実行を混同せず、表示メッセージから誤りの箇所を調べる。演習では、既に使った命令を処理する場所と目的によって分類し、入力方法を対応付けた一覧を作る。構文が正しいのに実行されない例や、前の SQL を再実行した例を読み、どの入力が実行のきっかけになったかを考えることで、画面操作の手順を根拠に基づいて説明する。本細目で理解すべき範囲は、代表的な SQL 文と SQL*Plus コマンドを役割と入力方法から区別し、適切な方法で実行できる段階まで。
③ DESCRIBE または DESC で表の列名、データ型、NULL 許可の表示を確認し、表に格納された行データを表示する SELECT との違いを理解する。既習の表を対象に、定義表示から検索に使う列や型を読み取り、SQL の記述へ結び付ける。DESCRIBE だけで主キー・外部キーを含むすべての制約や権限が分かるわけではないことも整理する。演習では、定義表示から利用したい列を選び、その列を指定した SELECT 文と結果を照合する。列名が分からない場合と、列にどのような値が入っているかを知りたい場合を比較し、目的に応じた確認方法を選ぶ。得られた情報だけでは判断できない事項も具体的に挙げる。本細目で理解すべき範囲は、DESCRIBE の結果から主要な列定義を読み取り、行データの参照や詳細な制約確認との違いを説明できる段階まで。
キーワード ① SQL*Plus ② DESCRIBE ③ DESC ④ SET ⑤ SQLバッファ
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗同じ表について DESCRIBE と SELECT を実行し、得られる情報を比較すること。SET による表示変更の前後を記録し、SQL 文と SQL*Plus コマンドの役割、終端の扱い、再実行の方法を整理すること。さらに、SQL の入力、バッファ内容の確認、再実行を一つの例で記録し、それぞれの段階で画面に何が表示されたかを説明すること。表定義の表示から読み取れた情報と、読み取れなかった情報を分けて書くこと。列を選ぶ際にデータ型を確認した理由も整理すること。実行結果の見え方が変わった場合は、表の内容を変更したのか表示設定を変えたのかを区別して記すこと。
〖予習〗次回の置換変数に向けて、検索条件の値だけを変えて同じ SQL を実行する場面を考えること。数値条件と文字列条件の例を一つずつ用意し、&、&&、DEFINE、UNDEFINE の役割を資料で確認しておくこと。さらに、同じ表から異なる条件値で検索する二つの SQL を並べ、共通部分と書き換える部分に印を付けること。文字列の条件では引用符をどこに置く必要があるかを確認し、値だけを差し替えた場合の SQL 全体を予想すること。毎回値を入力したい場合と同じ値を繰り返し使いたい場合を比較し、置換変数がどのように役立つかを考えること。変数名と値の違いも整理しておくこと。

10 置換変数、DEFINE 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第10回は、第9回で整理した SQL*Plus の操作を発展させ、置換変数を使って SQL の一部を変更しながら実行する方法を学ぶ回である。SQL 文を毎回書き直す操作から、条件などを差し替えて再利用する操作へ進み、SQL*Plus 側の文字列置換とデータベース側の実行を区別する。変数の定義、値の確認、解除を一連の手順として理解し、以後の関数やデータ操作の演習を繰り返し検証する基礎を養う。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① 置換変数の利用 ② DEFINEによる変数の定義 ③ UNDEFINEと変数値の確認
細目レベル ① 検索条件の値を &変数名 で置き換え、未定義の場合に入力を求められる動作を確認する。&&変数名 では入力した値が定義として保持され、後の参照に再利用されることを比較する。置換は SQL*Plus が SQL を送信する前に行う文字列の差替えであり、バインド変数とは異なることを理解する。数値と文字列の例を用い、引用符を含めて置換後の SQL が成立するかを確かめる。演習では、条件値を二通り入力して検索結果を比較し、置換される箇所と共通して使われる箇所を示す。入力した値だけを見るのではなく、差し替え後の SQL 全体を読み、引用符や演算子を含む条件が意図した意味になっているかを確かめてから結果を説明する。本細目で理解すべき範囲は、& と && の基本的な違いを説明し、置換後の SQL を確認しながら条件値を変更して実行できる段階まで。
② DEFINE で変数名と値を明示的に定義し、同じ定義を複数の SQL から参照する方法を学ぶ。定義した値を変更して検索結果を比較し、SQL 本体と差し替える値を分けて管理する利点を理解する。DEFINE による値は文字列として扱われるため、数値として使う場合も置換後の SQL の文脈で解釈されることを確認する。データベースの列や永続的な保存領域を作る命令ではないことも整理する。演習では、同じ定義を参照する複数の検索文を用意し、値を変更したときに各実行結果がどのように変化するかを予想する。定義前、定義後、変更後の値を記録し、SQL 本体を書き直した場合との違いを整理することで、再利用の便利さと値を管理する必要性を理解する。本細目で理解すべき範囲は、DEFINE で置換変数を定義・変更し、同一セッション内で複数の SQL に再利用できる段階まで。
③ DEFINE 変数名 や引数を付けない DEFINE により、保持されている変数名と値を確認する。UNDEFINE で定義を解除し、解除後に同じ変数を参照したときの入力要求を比較する。&& によって残った値や前の演習で定義した値が意図せず再利用される例を確認し、実行前の値の確認と演習後の解除を習慣付ける。変数定義の解除が表のデータ削除ではないことも理解する。演習では、変数が未定義の状態から始め、定義、参照、値の確認、解除、再参照の順に操作する。各段階で入力要求が出るかを予想し、実際の動作と比較する。予想が外れたときは、その時点で残っていた定義を調べ、前の操作が後の実行に与える影響を説明する。本細目で理解すべき範囲は、置換変数の値の確認と定義の解除を行い、定義の有無による実行時の動作の違いを説明できる段階まで。
キーワード ① & ② && ③ 置換変数 ④ DEFINE ⑤ UNDEFINE
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗&、&&、DEFINE を使って同じ条件検索を実行し、入力要求と値の再利用の違いを記録すること。DEFINE による値の確認、値の変更、UNDEFINE による解除を順に試し、置換後の SQL と結果を対応付けて説明すること。また、変数が未定義のとき、定義済みのとき、解除した後の三つの状態について、入力要求が出たかを一覧にすること。数値条件と文字列条件の両方を扱い、引用符を含む SQL のどの部分が置き換わったかを明示すること。意図しない値が使われた場合は、残っていた定義とその確認方法を記すこと。置換変数の操作が表の値を変更する操作とは異なる理由も説明すること。
〖予習〗第11回の NULL関数に向けて、NULL と 0 の違い、IS NULL による判定を復習すること。NVL、NVL2、NULLIF、COALESCE について、入力が NULL の場合や値が等しい場合に何を返すかを資料で確認し、比較する例を用意しておくこと。さらに、値がある場合、NULL の場合、比較する二つの値が等しい場合、異なる場合を含む小さな例を作ること。それぞれについて各関数がどのような結果を返すと考えたかを記録し、次回の実行結果と比較できるようにすること。NULL を通常の値と同じ方法で比較しない理由も確認すること。関数名を覚えるだけでなく、代わりの値を返したい場面など、利用目的を一つずつ整理しておくこと。

11 NULL関数 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第11回は、NULL を含むデータから目的に合った結果を得るために、各種 NULL関数を比較する回である。既習の NULL 判定と第10回の SQL の再利用を土台に、代替値の指定、値の比較、優先順位に応じた値の選択を学ぶ。本回で確認する関数の使い分けは、後続のデータ追加・更新や集計で欠損値を適切に扱うための判断基準となる。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① NVLとNVL2 ② NULLIF ③ COALESCE
細目レベル ① NVL は対象が NULL のときの代替値を返し、NVL2 は対象が NULL かどうかに応じて二つの値を使い分ける関数として理解する。値のある行と NULL の行を含む小さな表を用い、各引数の役割、判定対象、返される値を対応付ける。結果を表示するための置換が元の列値の更新とは異なることも確認する。数値と文字列の例では、返す値のデータ型が適切かを確認し、見た目だけで同じ値と判断しない。演習では、計算に使う代替値と画面に示す説明文を分けて考え、使用目的に合う関数を選ぶ。実行前に各行の結果を予想し、予想と異なる行では判定対象と引数の並びを見直すことで、構文の暗記にとどまらず結果を説明する力を養う。本細目で理解すべき範囲は、NVL と NVL2 の引数と動作を区別し、基本的な NULL 補完や条件に応じた値の選択を行える段階まで。
② NULLIF は二つの式を比較し、等しい場合は NULL、等しくない場合は最初の式の値を返す関数として理解する。比較した結果を真偽値として返す関数ではないことを確認し、等しい値と異なる値を含む例で出力を予想する。元の値をそのまま使う場合と、特定の値を欠損として扱いたい場合を比較し、関数を適用する目的を説明する。演習では、比較する二つの列を表示したうえで NULLIF の結果を追加し、入力と出力の関係を一行ずつ確認する。NULL を含む場合も通常の値の比較と混同せず、実行結果を記録する。結果をさらに計算や別の関数に渡す例を読み、NULL になった値が後続の処理でどう扱われるかを考える。引数の型を確認する習慣も身に付ける。本細目で理解すべき範囲は、NULLIF が NULL を返す条件を説明し、二つの式の比較結果を目的に応じて利用できる段階まで。
③ COALESCE は複数の候補を左から確認し、最初の NULL でない値を返す関数として理解する。主連絡先、代替連絡先、表示用の値など、優先順位のある選択を例に、引数の順序が結果へ与える影響を確認する。すべての候補が NULL の場合も含めて、どの値が選ばれるかを実行前に予想する。候補の並びを変えた結果を比較し、単に NULL を埋めるだけでなく業務上の優先順位を SQL で表すことを学ぶ。演習では、二つの候補を扱う例から三つ以上の候補へ進み、NVL との共通点と使い分けを整理する。返される値の型や、実際には使われない候補も含む式の書き方を確認し、期待する出力になる理由を各行の入力値に基づいて説明する。本細目で理解すべき範囲は、候補の優先順位と NULL の有無を踏まえ、COALESCE で適切な値を選択できる段階まで。
キーワード ① NULL ② NVL ③ NVL2 ④ NULLIF ⑤ COALESCE
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗NVL、NVL2、NULLIF、COALESCE について、引数の役割と返される値を比較表にすること。値のある行、NULL の行、比較値が等しい行、すべての候補が NULL の行を含む例を用意し、実行前の予想と実行結果を記録すること。予想が外れた場合は関数名だけを直すのではなく、判定対象と引数の順序を見直すこと。さらに、表示用の代替値を返す処理と元データを更新する処理の違いを説明し、各関数を使いたい場面を一つずつ自分で挙げること。
〖予習〗第12回の MERGE に向けて、既存の表と新たに受け取ったデータを照合する場面を考えること。両方に同じ識別子がある行、受け取ったデータにだけある行、既存表にだけある行を含む例を作り、どの行を更新し、どの行を追加したいかを整理すること。既習の UPDATE と INSERT の役割を復習し、照合に使う列と変更する列を区別すること。資料の MERGE 文を読み、INTO、USING、ON が何を指定する部分かを確認し、説明できない箇所を次回の質問としてまとめること。

12 MERGE 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第12回は、照合結果に応じて更新と追加を使い分ける MERGE を学ぶ回である。既習の結合条件、UPDATE、INSERT を一つの処理の流れとして結び付け、既存データへ新しい情報を反映する考え方を身に付ける。本回は第13回の複数表への追加と比較する基準となり、処理の目的に応じた DML の選択へつながる。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① MERGE文の基本構文 ② 一致行の更新 ③ 不一致行の追加
細目レベル ① MERGE の対象表、入力となるデータ、照合条件をそれぞれ INTO、USING、ON に対応付け、文全体の流れを理解する。入力行に対応する対象行がある場合とない場合を図示し、更新と追加の分岐を確認する。すべての行を無条件に上書きする命令ではないことを、照合用の識別子が異なる例から説明する。演習では、少数行の入力表と対象表を並べ、実行前に各入力行の処理を予想してから SQL を組み立てる。表の別名と列の所属を明確にし、照合する列と反映する列を区別する。入力側の識別子が重複して同じ対象行に複数回対応するような条件を避け、照合関係が明確な教材データで学ぶ。実行後は更新行と追加行を別々に確認し、結果の根拠を説明する。本細目で理解すべき範囲は、対象・入力・照合条件を読み取り、基本的な MERGE の更新と追加の流れを説明できる段階まで。
② 一致行の更新では、ON 条件を満たした対象行に対して WHEN MATCHED THEN UPDATE の指定が適用されることを理解する。既存の名称や測定値を新しい値へ反映する例を用い、更新前と更新後の列値を比較する。行が一致することと全列の値が等しいことは同じではなく、指定した照合条件で対象が決まることを確認する。演習では、SET で変更する列を明示し、変更しない列や一致しない行がどう残るかも予想する。ON 条件に用いた列を更新対象とする制限にも注意し、教材では識別用の列と変更する属性を分ける。更新後の件数だけでなく識別子ごとの値を調べ、意図しない行を対象にしていないかを検証する。結果を確認してから確定する既習の手順も適用する。本細目で理解すべき範囲は、一致行に対する更新列と値を指定し、照合条件と更新結果を対応付けて確認できる段階まで。
③ 不一致行の追加では、入力行に対応する対象行が存在しない場合に WHEN NOT MATCHED THEN INSERT が適用されることを理解する。入力側にだけある識別子を抽出し、追加される行の列と値を一組ずつ対応付ける。既存表にだけある行が自動的に追加や削除の対象になるわけではないことも比較例で確認する。演習では、INSERT の列一覧と VALUES の値を照合し、主キーや必須項目などの制約を満たす行を用意する。実行前に追加予定件数を予想し、実行後に識別子と属性値を調べて照合する。同じ入力を再び処理した場合に、照合条件によって更新側に進むことも考え、単なる INSERT の繰返しとの違いを整理する。不要な重複を生じさせない条件の意味を説明する。本細目で理解すべき範囲は、入力側の不一致行を対象とする追加を記述し、列と値の対応および追加結果を確認できる段階まで。
キーワード ① MERGE INTO ② USING ③ ON ④ WHEN MATCHED ⑤ WHEN NOT MATCHED
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗MERGE の入力表と対象表を紙面上で並べ、各入力行が更新と追加のどちらへ進むかを示すこと。実行した文の INTO、USING、ON、更新部分、追加部分を区別し、それぞれの役割を説明すること。更新前後の値と追加された識別子を確認し、件数が合うだけで正しいと判断しないこと。入力に同じ識別子が重なる場合の問題も考えること。さらに、同じ入力を再処理したときの動作を予想し、単独の UPDATE や INSERT を使用する場合との違いを整理すること。
〖予習〗第13回のマルチテーブル INSERT に向けて、一つの入力データから複数の表へ情報を追加する場面を考えること。すべての入力行を二つの表へ追加したい場合と、条件に応じて追加先を選びたい場合を分け、小さな例を作ること。通常の INSERT INTO と INSERT INTO SELECT の役割を復習し、入力の行数と追加される行数が必ず同じになるかを検討すること。INSERT ALL と INSERT FIRST という記述を資料で確認し、条件が重なった場合に何を比較すべきかを質問としてまとめること。

13 マルチテーブルINSERT 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第13回は、一つの問合せ結果を複数の追加先へ振り分けるマルチテーブル INSERT を学ぶ回である。第12回の MERGE が既存行との照合を基に処理を選ぶのに対し、本回では入力行から複数の追加処理を組み立てる考え方を整理する。無条件と条件付きの動作を比較し、データの振分けを要求どおりに記述する力を養う。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① マルチテーブルINSERTの概要 ② 無条件INSERT ALL ③ 条件付きINSERT ALL/FIRST
細目レベル ① マルチテーブル INSERT を、一つの SELECT が返す行を基に複数の INTO 指定で追加する構文として理解する。入力となる問合せ、追加先の表、各表へ渡す列と値を分けて読み、通常の単一表への INSERT と比較する。複数行を一つの表へ追加することと、複数の追加先を指定することを混同しない。演習では、共通の入力表から担当別の表や記録用の表へ追加する例を図にし、一つの入力行が何回の追加につながるかを数える。追加先の列構成が異なる場合は、必要な値をどの入力列から取り出すかを整理する。制約やデータ型を確認し、実行前に追加先ごとの期待結果を用意する。第12回の照合による更新・追加と比較し、既存行を更新する目的ではないことを説明する。本細目で理解すべき範囲は、入力問合せと複数の追加先の関係を説明し、用途に応じた基本構文を読み取れる段階まで。
② 無条件 INSERT ALL では、入力問合せが返す各行について、記述したすべての INTO 指定に対応する追加を行うことを理解する。条件による振分けがない例を用い、入力行を二つの表へ登録した場合の結果を確認する。追加先ごとに列名と値の順番を照合し、同じ入力でも各表へ保存する項目を変えられることを学ぶ。演習では、実行前に入力件数と追加先ごとの期待件数を記録し、実行後に値と件数を比較する。入力問合せが行を返さない場合も取り上げ、INTO が書かれているだけで追加されるわけではないことを確認する。表の制約に反する値を含めないよう教材を点検し、エラーが出た場合は対象表と列の対応を調べる。確定前の確認と演習データの扱いも整理する。本細目で理解すべき範囲は、各入力行がすべての追加先へ反映される動作を理解し、無条件 INSERT ALL の結果を検証できる段階まで。
③ 条件付きの構文では、WHEN 条件に応じて追加先を決め、条件に該当しない場合の ELSE の役割も確認する。INSERT ALL は成立する各 WHEN の追加指定を処理し、INSERT FIRST は最初に成立した WHEN の追加指定を処理する違いを学ぶ。一つの WHEN に複数の INTO がある場合も読み、FIRST が常に一表への追加だけを意味するわけではないことを理解する。演習では、条件が一つだけ成立する行、複数成立する行、どれも成立しない行を用意し、両構文の結果を比較する。条件の並びを変えたときに FIRST の結果が変わる例を確認し、優先順位が要求に合っているかを検討する。各追加先の識別子を照合し、重複や振分け漏れを検証する。本細目で理解すべき範囲は、ALL と FIRST の条件評価の違いを説明し、重複条件を含む基本的な振分けを記述できる段階まで。
キーワード ① INSERT ALL ② INSERT FIRST ③ WHEN ④ INTO ⑤ SELECT
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗無条件 INSERT ALL、条件付き INSERT ALL、INSERT FIRST の三つを比較し、同じ入力行がどこへ追加されるかを一覧にすること。条件が重なる行と、どの条件にも合わない行を必ず含め、実行前の予想と追加先の実データを照合すること。入力件数だけで判断せず、表ごとの件数と識別子を確認すること。WHEN の順序を入れ替えた場合や ELSE を用いない場合も考え、要求する振分けをどの構文で表せるかを理由とともに説明すること。
〖予習〗第14回の一時表に向けて、計算や集計の途中だけ必要となるデータの例を考えること。処理が終わっても保存するデータと、その処理で使い終えたら不要になるデータを区別し、いつ消えてよいかを文章で示すこと。COMMIT とセッション終了の違いを復習し、二人の利用者が同じ作業用の仕組みを使う場合にデータを共有したいかを検討すること。グローバル一時表とプライベート一時表の用語を資料で確認し、表の定義と格納した行の寿命を分けて調べる準備をすること。

14 一時表 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第14回は、処理途中のデータを扱う一時表を学び、永続的な表と使い分ける回である。既習の表作成とトランザクションの知識を基に、表の定義が残る期間、行データが残る期間、他のセッションからの見え方を整理する。第15回の外部表と合わせ、通常の表とは異なる特徴を持つ表を目的に応じて選ぶ視点を養う。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① 一時表の特徴と用途 ② グローバル一時表 ③ プライベート一時表
細目レベル ① 一時表を、集計前の加工結果や作業途中のデータを一定期間保持するための仕組みとして理解する。名前に一時という語があるだけで、表の定義と行データが同じ時点で消えるとは限らないことを確認する。永続表との比較では、保存期間、利用目的、セッション間での見え方を別の観点として整理する。演習では、複数段階の処理を想定し、どの時点まで中間結果を残す必要があるかを図にする。COMMIT を行ったときと接続を終了したときの違いを既習事項と結び付け、消失して困るデータを不用意に一時表へ置かない判断を学ぶ。また、一時表を利用すればあらゆる処理が速くなると決め付けず、データの扱い方が目的に適するかを中心に検討する。本細目で理解すべき範囲は、一時表の用途を説明し、定義・行データ・利用セッションの観点から永続表と区別できる段階まで。
② グローバル一時表は定義を共有できる一方、格納する行データはセッションごとに扱われることを理解する。CREATE GLOBAL TEMPORARY TABLE の例を読み、ON COMMIT DELETE ROWS と ON COMMIT PRESERVE ROWS の違いを、コミット後に行が残るかという観点で確認する。グローバルという語から、全利用者の作業データが共有されると誤解しない。演習では、二つのセッションでそれぞれ異なるデータを登録し、自分の結果を確認する。さらに、同じセッションでコミット前後を比較し、指定した保存期間に従うことを検証する。定義が残っていることと行が残っていることを分けて記録し、使用する処理の区切りに合った指定を選ぶ根拠を説明する。本細目で理解すべき範囲は、共有される定義とセッション固有の行データを区別し、基本的な保存期間の指定を確認できる段階まで。
③ プライベート一時表は、作成したセッション内で定義と行データを扱う一時表として理解する。CREATE PRIVATE TEMPORARY TABLE の基本例を読み、授業環境で定められた名前の接頭辞を確認する。ON COMMIT DROP DEFINITION と ON COMMIT PRESERVE DEFINITION を比較し、コミット時に定義を破棄する場合とセッション中に保持する場合を整理する。演習では、作成、データ登録、コミット、定義確認を順に行い、どの段階で利用できなくなるかを記録する。別セッションからの見え方も確認し、グローバル一時表と名称だけで区別しない。教材で採用する版と条件に沿って実行し、永続的に再利用する定義が必要な場合との使い分けを考える。本細目で理解すべき範囲は、プライベート一時表の定義の有効範囲と寿命を説明し、指定条件で作成と確認を行える段階まで。
キーワード ① 一時表 ② グローバル一時表 ③ プライベート一時表 ④ ON COMMIT ⑤ セッション
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗一時表の二種類を、定義の共有範囲、行データの見え方、コミット後の状態、セッション終了後の状態で比較すること。演習で指定した ON COMMIT の内容を確認し、作成直後、登録後、コミット後に何が残ったかを記録すること。表が存在することと行が存在することを別々に調べ、期待と違う場合は指定した保存期間を見直すこと。中間結果を保持する処理を一つ考え、どちらの一時表を選ぶかを、必要な保存期間と利用者の範囲から説明すること。
〖予習〗第15回の外部表に向けて、CSV などのファイルを SQL で調べたい場面を考えること。データを通常の表へ取り込んで保存する方法と、ファイルを外部に置いたまま参照する方法の違いを整理すること。区切り文字、列の順番、データ型など、ファイルを表の行と列として読むために必要な情報を挙げること。SQL*Loader、ORACLE_LOADER、ORACLE_DATAPUMP の名称を資料で確認し、それぞれがツールかアクセス方法かを調べ、分からない関係を図にしておくこと。

15 外部表 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第15回は、DB外部のファイルにあるデータを SQL の処理へ結び付ける方法を学ぶ回である。外部表による参照と SQL*Loader による取込みを区別し、ファイルの形式、配置、表定義の対応を整理する。一時表と合わせた表の使い分けを理解するとともに、後続の設計・実装で外部データを利用する際の基礎を形成する。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① 外部表の特徴と用途 ② SQL*Loader ③ ORACLE_DATAPUMP
細目レベル ① 外部表を、外部ファイルの内容を列定義と対応付けて SQL で参照する仕組みとして理解する。ORGANIZATION EXTERNAL を含む定義を読み、ファイルの所在、列の順序、データ型、読取り方法の役割を整理する。授業では ORACLE_LOADER によるテキストデータの参照を基本例とし、データが通常の表へ自動的に保存されるわけではないことを確認する。演習では、小さなファイルの各項目と表の列を並べ、SELECT の結果が元データと一致するかを調べる。DBサーバー側から参照できる配置や権限が必要な点も扱い、手元にファイルがあるだけで読めるとは判断しない。通常の表への INSERT と外部ファイルの参照を分け、目的に合う利用方法を説明する。本細目で理解すべき範囲は、外部ファイルと表定義の対応を読み取り、基本的な外部表の参照と通常表との違いを説明できる段階まで。
② SQL*Loader は、外部ファイルのデータをデータベースの表へ取り込むためのツールとして理解する。外部表を読むための ORACLE_LOADER と名称を混同せず、実行するツールとアクセスドライバの違いを整理する。教材では、入力ファイル、取込み先の表、列の対応を指定する制御情報を確認し、処理前後の行数と値を比較する。実行ログには成功した行だけでなく読取りや変換に問題のある行を調べるための情報があることを学ぶ。演習では、指定された小さなデータを取り込み、列ずれやデータ型の不一致を確認する。ファイル全体の行数だけで成功を判断せず、登録された識別子と値を照合し、取込み結果を報告する。SQL で外部を参照する方法との選択理由も考える。本細目で理解すべき範囲は、SQL*Loader の入力・設定・出力の関係を説明し、基本的な取込みと結果確認を行える段階まで。
③ ORACLE_DATAPUMP を、外部表でバイナリ形式のダンプファイルを読み書きするためのアクセスドライバとして理解する。テキストファイルを読む ORACLE_LOADER との形式の違いを確認し、ファイル名だけで読取り方法を決めない。教材では、CREATE TABLE AS SELECT を用いた外部表の作成に伴う書出しと、作成されたファイルを外部表として読み取る流れを扱う。出力済みのファイルへ通常の表と同じように UPDATE や追記を行う仕組みではないことを整理する。演習では、書出し前の問合せ結果と読取り後の結果を識別子・件数・値で比較する。一般的な Data Pump のエクスポートやインポートの説明と区別し、本回で扱う外部表の用途に範囲を絞る。本細目で理解すべき範囲は、ORACLE_DATAPUMP 外部表の用途と形式を説明し、基本的な書出し・読取りの対応を確認できる段階まで。
キーワード ① 外部表 ② ORGANIZATION EXTERNAL ③ ORACLE_LOADER ④ SQL*Loader ⑤ ORACLE_DATAPUMP
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗外部表による参照、SQL*Loader による取込み、ORACLE_DATAPUMP 外部表による書出しと読取りを、データの置き場所と処理方向で比較すること。入力ファイルの項目と表の列の対応を示し、実行前後の件数と値を確認すること。ログやエラーがある場合は、何を根拠に原因を調べたかを記すこと。特に SQL*Loader と ORACLE_LOADER を混同しないよう、それぞれの役割を一文で説明すること。新しいファイルを扱う際に必要な確認項目も自分の一覧にまとめること。
〖予習〗第16回のバックアップとリカバリに向けて、表の行を誤って変更した場合とデータファイルが利用できなくなった場合を区別すること。既習の COMMIT、ROLLBACK、DB の停止・起動を復習し、すべての障害を ROLLBACK だけで元に戻せるかを考えること。バックアップを取得した時点と障害が起きた時点を時間軸上に描き、その間の変更を戻すために何が必要かを予想すること。RMAN、RESTORE、RECOVER、REDOログという用語を資料で確認し、役割の違いを整理しておくこと。

16 バックアップとリカバリ 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第16回は、データを失ったときの復旧を見据えて、バックアップの取得とリカバリの基本を学ぶ回である。前半で学んだ構成、管理接続、起動・停止を実際の保全操作へ結び付ける。復旧可能な範囲が事前の備えに依存することを理解し、単に操作を完了させるだけでなく復旧後のデータを確認する運用の視点を養う。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① バックアップ演習 ② データ破損の例 ③ リカバリ演習
細目レベル ① バックアップ演習では、復旧に使用するコピーを計画的に取得し、何をどの時点で保存したかを確認する。RMAN による BACKUP DATABASE の基本的な役割を学び、対象 DB、接続権限、保存先、取得結果を授業資料に沿って確認する。ログ運用モードと DB の状態によって取得できるバックアップの条件が異なるため、常に稼働中のまま取得できるとは考えない。演習では、教員が用意した学習用環境の条件を確認してから操作し、実行ログとバックアップの情報を記録する。コマンドが終了したことだけでなく、復旧に使う対象がどれかを特定できることを重視する。取得時点のデータを確認用の記録に残し、後の復旧結果と比較する基準を用意する。本細目で理解すべき範囲は、授業環境の前提条件を確認してバックアップを取得し、対象・取得時点・結果を説明できる段階まで。
② データ破損の例では、ファイルが読めない状態と、操作の誤りで業務上不正な値が保存された状態を分けて考える。接続や SQL の実行でどのような異常が現れるかを、教員が用意した事例や隔離された演習環境で確認する。実際の利用データを不用意に変更して障害を再現するのではなく、原因、影響範囲、確認できた情報を整理することを中心とする。演習では、障害発生前後の状態を時間軸に示し、最後のバックアップがどの時点にあるかを確かめる。エラーメッセージの一語だけで復旧方法を決めず、対象ファイルや失われた変更の範囲を資料と照合する。既習のトランザクション操作で対処できる場合と、バックアップが必要な場合の違いも考える。本細目で理解すべき範囲は、代表的な障害例の原因と影響を区別し、復旧の判断に必要な基本情報を整理できる段階まで。
③ リカバリ演習では、バックアップからファイルを戻す RESTORE と、利用可能なログなどを用いて必要な変更を反映する RECOVER を区別する。保存したコピーを戻すだけで障害直前まで必ず復旧できるわけではなく、取得時点とログの有無に依存することを確認する。授業では教員が定めた復旧範囲と手順に沿い、対象 DB の状態を確認しながら操作を進める。演習前に復旧後の期待データを用意し、処理終了後に接続、表の参照、件数、主要な値を調べる。正常終了の表示だけを根拠とせず、想定した時点までデータが戻ったかを検証する。失われた変更があれば理由を時間軸上で説明し、バックアップ時の記録が復旧確認にどう役立つかを振り返る。本細目で理解すべき範囲は、指定された条件で基本的な復旧手順を実施し、復旧範囲とデータの確認結果を説明できる段階まで。
キーワード ① RMAN ② BACKUP DATABASE ③ RESTORE ④ RECOVER ⑤ REDOログ
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗バックアップの取得から障害確認、復旧後の検証までを時間軸にまとめ、各段階で使用した情報と操作を対応付けること。RESTORE と RECOVER の役割を分け、バックアップの時点と利用可能なログが復旧範囲にどう関係するかを説明すること。復旧後の接続確認だけでなく件数や主要な値の確認結果も記録すること。授業で用いた環境条件を明記し、別の条件でも同じ手順でよいと決め付けないこと。正常終了の表示と業務データの正しさを区別して振り返ること。
〖予習〗第17回の実行計画に向けて、同じ結果を返す SQL でも処理の仕方が異なる可能性を考えること。全行を調べる場合と索引を手掛かりに調べる場合を、表の行数と条件に合う行数の違いから比較すること。既習の SELECT、WHERE、JOIN を復習し、どの表と列を参照しているかを読み取ること。EXPLAIN PLAN と AUTOTRACE の役割を資料で確認し、検索結果の値を確認することと処理方法を確認することの違いを説明できるようにすること。実行時間だけで判断する場合の限界も考えること。

17 実行計画 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第17回は、SQL がどのような処理方法で実行されるかを実行計画から読み取る回である。既習の検索や結合を、結果の正しさに加えてアクセス方法の観点から捉え直す。計画上の見積りと実行時の情報を区別する基礎を身に付け、第18回の索引設計とオプティマイザ統計の学習へつなげる。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① 実行計画の考え方 ② EXPLAIN PLAN ③ AUTOTRACE
細目レベル ① 実行計画を、SQL の結果を得るために選択される表へのアクセスや結合などの処理の組合せとして理解する。SQL の記述順をそのまま順番に実行する手順書とは捉えず、表や索引に対する操作と処理の関係を図で確認する。コストや推定行数は計画選択のための見積りであり、その値を秒数や実測件数と同じ意味で扱わない。演習では、単一表の条件検索から始め、対象表、使用する索引、条件を適用する箇所を教材の計画表示と対応付ける。同じ結果を得る別の SQL や条件の異なる例を比較し、何が変わったかを説明する。処理名のすべてを暗記するのではなく、どのデータへどうアクセスするかを読み取ることを中心に学ぶ。本細目で理解すべき範囲は、基本的な実行計画の役割と主要項目を説明し、アクセス方法と見積りの意味を読み取れる段階まで。
② EXPLAIN PLAN を用いて、指定した SQL に対する計画を作成し、PLAN_TABLE に保存された内容を DBMS_XPLAN.DISPLAY などで確認する方法を学ぶ。この操作で得られる計画は、SQL を実際に実行して得た測定結果そのものではないことを整理する。演習では、実行予定の SELECT 文を記録し、計画作成と表示を別の段階として実施する。複数の SQL を扱う場合はどの文に対応する表示かを確認し、古い結果と取り違えない。表示中の対象名、操作名、推定行数、条件を読み、SQL の指定内容へ対応付ける。計画が実際の実行時と異なる場合もあることを知り、この表示だけで性能を断定せず、後の比較や調査の出発点として利用する。本細目で理解すべき範囲は、EXPLAIN PLAN の作成と表示を行い、対象 SQL に対応する基本情報を確認できる段階まで。
③ AUTOTRACE は SQL*Plus で SQL の実行に関する計画表示や統計情報を確認する機能として理解する。授業環境で必要な権限と設定を確認し、SET AUTOTRACE の指定によって検索結果と追加情報を比較する。表示される実行計画と実行時の統計は性質が異なり、計画中の推定値がそのまま実測値になるとは考えない。演習では、同じ SQL とデータを用いて設定の有無を比べ、通常の結果表示へどの情報が加わったかを整理する。読取りに関する統計などを資料の説明と対応付け、一つの数値だけで速い・遅いと判断しない。比較後は授業で指定された設定へ戻し、計画を調べた SQL、実行条件、得られた値を記録して次回の索引比較に備える。本細目で理解すべき範囲は、AUTOTRACE の基本設定と出力確認を行い、計画の見積りと実行時統計の違いを説明できる段階まで。
キーワード ① 実行計画 ② EXPLAIN PLAN ③ DBMS_XPLAN.DISPLAY ④ AUTOTRACE ⑤ アクセス・パス
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗授業で扱った SQL と実行計画を対応付け、対象表、アクセス方法、推定行数、条件の適用箇所を読み取ること。EXPLAIN PLAN による表示と AUTOTRACE の出力を比べ、見積りと実行時の情報を分けて記録すること。計画中のコストを秒数と読み替えない理由も説明すること。複数の SQL を比較した場合は結果が同じかどうかも確認し、処理方法だけに注目して意味の違いを見落とさないこと。理解できなかった操作名は資料の説明と結び付けて整理すること。
〖予習〗第18回の索引設計に向けて、条件検索でよく使用する列を含む小さな表を想定すること。多くの行が同じ値になる列と、値の種類が多い列を比較し、条件に一致する行の割合がアクセス方法の選択に関係する理由を考えること。CREATE INDEX の基本構文を復習し、索引を作る前後で何を比較すれば効果を確認できるかを挙げること。オプティマイザ統計という用語を調べ、表の行数や値の分布に関する情報が古いとどのような判断が難しくなるかを予想しておくこと。

18 索引設計とオプティマイザ統計 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第18回は、実行計画を読む技能を用いて、索引の設計とオプティマイザ統計の役割を考える回である。環境データベースⅡの索引の知識を、検索条件やデータ分布に応じた選択へ発展させる。索引を作成した事実だけで効果を判断せず、同じ結果を保った比較から理由を説明する力を養い、後半の物理設計の基礎につなげる。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① 適切な索引設計 ② オプティマイザ統計の役割 ③ SQL実行演習
細目レベル ① 索引設計では、検索や結合で使用する列、条件に一致する行の割合、更新の頻度を考慮して、索引の利用目的を整理する。Bツリー索引を基本例とし、索引が存在すればすべての検索で必ず利用されるという理解を改める。演習では、同じ表に対する選択性の異なる条件を比較し、全表走査が選ばれる場合も結果と計画から確認する。複数列を候補にする場面では、どの条件で検索するかを先に示し、列の選び方を説明する。索引には保存領域や更新時の維持処理も必要なため、無条件に数を増やすのではなく用途に合わせる。作成前の期待と作成後の計画を並べ、想定どおりでない場合も失敗と決め付けず、表の規模や条件を見直す姿勢を身に付ける。本細目で理解すべき範囲は、基本的な検索要求から索引候補を考え、利用目的と作成前後の計画を説明できる段階まで。
② オプティマイザ統計を、表の行数や列値の分布などを基に処理量を見積もり、実行計画を選ぶための情報として理解する。データそのもの、計画に示される推定行数、実行時に処理した行数を区別し、同じカーディナリティという語でも何を数えているかを文脈から確認する。演習では、データの件数や偏りを変更した教材を読み、以前の統計のままでは実態を表しにくい理由を考える。授業で指定された統計の確認・更新方法を用い、更新前後の情報と計画を比較する。統計を更新すれば必ず同じ方向に速くなると断定せず、選択に使う情報が変わった点を説明する。性能の理由を一つの要因だけに求めず、SQL とデータの条件を一緒に記録する。本細目で理解すべき範囲は、統計とデータ分布の関係を説明し、基本的な統計の確認と計画比較に利用できる段階まで。
③ SQL実行演習では、索引の有無や統計の状態を変えたときに、同じ検索の結果と計画がどう変化するかを確かめる。比較する SQL、データ件数、条件値、取得する列をそろえ、どの要因を変更したかを明示する。実行時間だけを一度測って結論を出さず、計画や読取りに関する情報を合わせて確認する。演習では、予想、変更操作、結果確認、理由の考察を順に記録し、異なる結果を返す SQL を性能比較の対象にしない。期待した索引が使われなかった場合は、対象件数や条件を調べ、観察できた事実と推測を区別する。最後に、採用したい設計とその理由を短くまとめ、検索効率と更新時の負担の両面から基本的な判断を説明する。本細目で理解すべき範囲は、比較条件をそろえて SQL を検証し、索引や統計の変更と観察結果の関係を説明できる段階まで。
キーワード ① Bツリー索引 ② CREATE INDEX ③ カーディナリティ ④ オプティマイザ統計 ⑤ 実行計画
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗索引作成前後の SQL、条件値、データ件数、実行計画を一覧にし、比較で変更した要因を明確にすること。検索結果が同じであることを確認したうえで、アクセス方法と統計情報の違いを説明すること。索引が使われなかった例も残し、表の規模や一致する行の割合との関係を考えること。実測した情報と計画上の見積りを区別し、観察していない効果を断定しないこと。最後に、その表で採用したい索引と、維持の負担も含めた理由を自分の言葉でまとめること。
〖予習〗第19回の日時データに向けて、DATE と TIMESTAMP の基本的な違いを復習すること。同じ出来事を異なる地域の時刻で記録する場合を想定し、時刻の数字だけを保存すれば十分かを考えること。現在日時を表す関数とタイムゾーンの関係を資料で確認し、DBサーバーと利用者の設定が異なる例を用意すること。また、出来事が起きた時点と二つの時点の間の長さを区別し、年月の期間と日時分秒の期間をどのように扱うかを予想して質問を整理すること。

19 日時データとタイムゾーン 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第19回は、日時を正しく保存・比較するために、日時型、タイムゾーン、期間データ型を整理する回である。既習のデータ型と関数を土台に、観測時点や処理時刻の意味を型と設定へ対応付ける。第20回の総復習に向けて応用 SQL の知識を補い、後半の設計演習で日時項目を選ぶための判断基準を養う。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① 日時型(復習) ② タイムゾーンと現在日時 ③ 期間データ型
細目レベル ① 日時型の復習では、Oracle の DATE が日付だけでなく時分秒も保持すること、TIMESTAMP が秒の小数部を扱えることを確認する。表示形式と実際に保存している情報を区別し、画面に日付だけが見えても時刻がないと決め付けない。演習では、同じ日で時刻が異なる値を用意し、表示形式を明示して比較する。文字列からの変換では、入力の書式と変換に使う指定を対応付け、端末やセッションの既定表示だけに依存しない読み方を学ぶ。等値条件や範囲条件の例では、指定した時刻までを含むかを確認し、日単位の検索と一点の時刻の比較を区別する。保存したい精度と利用する処理を先に考え、型の名前の印象ではなく保持する情報から選択する。本細目で理解すべき範囲は、DATE と TIMESTAMP の保持情報と表示を区別し、基本的な保存・表示・比較を行える段階まで。
② タイムゾーンでは、地域ごとの時刻表示と出来事の時点を分けて考え、時差を含めて記録する必要性を理解する。TIMESTAMP WITH TIME ZONE を例に、時刻だけの値とタイムゾーン情報を持つ値を比較する。CURRENT_DATE や CURRENT_TIMESTAMP はセッションのタイムゾーンを基準とし、SYSTIMESTAMP は DB が動くシステム側の日時情報に基づく違いを整理する。演習では、授業で指定された設定を確認し、同じ時点を異なるタイムゾーンで表示した結果を比べる。表示された時刻が違うだけで別の出来事と判断せず、何を基準に比較するかを説明する。設定と関数名を記録し、数値上の時刻だけを見て動作を断定しないことを重視する。本細目で理解すべき範囲は、基本的なタイムゾーン付き日時と現在日時関数の基準を区別し、設定に対応した結果を確認できる段階まで。
③ 期間データ型では、出来事が起きた日時と、二つの時点の間の長さを区別し、INTERVAL YEAR TO MONTH と INTERVAL DAY TO SECOND を扱う。年月を単位とする期間と日時分秒を単位とする期間を比較し、用途に合った表現を選ぶ。月を常に一定の日数へ置き換えてよいとは考えず、契約期間や観測間隔などの意味に注目する。演習では、期間の基本的なリテラルを読み、日時に期間を加える例や期間を表示する例を確認する。結果の型と保持する単位を整理し、単なる数値に日や月という意味を暗黙に与えた場合との違いを説明する。桁数や小数秒の扱いは教材の範囲で確かめ、求める精度と表現の対応を記録する。本細目で理解すべき範囲は、二種類の期間データ型の単位を区別し、基本的な期間の表現と日時との関係を扱える段階まで。
キーワード ① DATE ② TIMESTAMP ③ TIMESTAMP WITH TIME ZONE ④ CURRENT_TIMESTAMP ⑤ INTERVAL
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗DATE、TIMESTAMP、タイムゾーン付き日時、二種類の INTERVAL について、保持する情報と使用する場面を一覧にすること。授業で確認した表示を記録し、表示形式だけから保存内容を判断しない理由を説明すること。現在日時関数の結果を比較するときは、使用した関数とセッションの設定を明記すること。同じ日で時刻が異なる例と、同じ時点を別のタイムゾーンで表す例をそれぞれ作ること。出来事の時点と期間の長さを区別し、型を選んだ理由も記しておくこと。
〖予習〗第20回の SQL総復習に向けて、第9回から第19回の SQL*Plus、NULL関数、MERGE、マルチテーブル INSERT、一時表、外部表、日時データを用途別に整理すること。設定や定義を確認する操作とデータを変更する操作を分け、各機能を使用する小さな場面を一つずつ挙げること。特に ALL と FIRST、一時表の保存期間、日時と期間の違いを説明できるかを点検すること。自力で説明できない箇所を明確にし、復習演習で使うデータと期待結果の準備方法を考えておくこと。

20 SQL総復習 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第20回は、第9回以降に学んだ応用 SQL を、目的に応じて選択・実行する総復習の回である。SQL*Plus の操作、データの更新と振分け、特徴の異なる表、日時データを横断して確認する。個別の構文を再現するだけでなく、要求から使用する機能と検証方法を決める力を定着させ、第21回からの DB設計へつなげる。

渡部 亮太、舛井 智行、峯岸 隆一『オラクルマスター教科書 Silver SQL Oracle Database SQL』、翔泳社、2021年
コマ主題細目 ① SQL*Plusによる操作 ② MERGE/INSERT ALL ③ 一時表/外部表 ④ 日時データ
細目レベル ① SQL*Plus による操作では、接続対象の確認、表定義の参照、SQL の入力と再実行、置換変数の管理をまとめて実践する。与えられた課題に対して、どの表と列を使うかを DESCRIBE などで調べ、値を差し替えて同じ SQL を検証する。NULL を含む例では、第11回の関数も必要に応じて利用し、欠損の扱いを説明する。演習では、実行前の確認、使用する SQL、結果の読み取りを一連の記録にし、前の演習の変数値が残っていないかを調べる。SQL 文と SQL*Plus コマンドを混同した誤りを見直し、設定変更とデータ変更を区別する。結果を得るまでに必要な情報を自分で探し、作業を再現できる手順としてまとめることを重視する。本細目で理解すべき範囲は、既習の SQL*Plus 操作と関数を組み合わせ、課題に応じた実行・結果確認を自力で行える段階まで。
② MERGE と INSERT ALL の復習では、既存行との照合が必要な要求と、一つの入力から複数の追加先へ配る要求を区別する。構文名を先に選ぶのではなく、更新する行、追加する行、追加先の数、振分け条件を整理して使用する機能を決める。演習では、入力データと処理前の表を示し、実行後の期待状態を先に作成する。MERGE では一致・不一致を、条件付き INSERT では条件の重なりと優先順位を点検する。INSERT FIRST との比較も行い、同じ行が複数の追加先に入ることが要求に合うかを検証する。処理件数だけでなく識別子と値を照合し、誤りがあれば照合条件や振分け条件に戻って修正する。選択した構文の理由を文章で説明する。本細目で理解すべき範囲は、更新・追加・振分けの要求を区別し、基本的な MERGE とマルチテーブル INSERT を選択して検証できる段階まで。
③ 一時表と外部表の復習では、データをどこに置くか、いつまで保持するか、誰のセッションから扱うかを基に使用方法を選ぶ。処理途中の計算結果を保持する場面と、外部ファイルのデータを参照する場面を比較し、似た名称だけで選択しない。演習では、グローバル一時表とプライベート一時表の違いを実行前に整理し、コミットや接続終了に対応する状態を予想する。外部表ではファイル形式と列の対応を確認し、通常表への取込みと外部参照を区別する。SQL*Loader やアクセスドライバの役割も関連付け、与えられた条件でどの方式が適するかを説明する。結果の正しさだけでなく、必要な期間の保持や参照範囲が満たされるかを確認する。本細目で理解すべき範囲は、保存期間・配置・参照範囲から一時表と外部表を選び、既習範囲で基本的な利用結果を検証できる段階まで。
④ 日時データの復習では、日時、タイムゾーン、期間のどの情報が必要かを要求文から読み取り、型や関数を選ぶ。観測した時点を記録する場合、ある日のデータを取り出す場合、二つの時点の間隔を扱う場合を区別する。演習では、同じ日で時刻が異なる行やタイムゾーンの異なる表示を用意し、検索条件が期待する対象を含むかを確かめる。表示形式と保持情報の違いを意識し、見えている文字だけで等しい値と判断しない。現在日時を使用する場合は基準となる設定を記録し、期間の単位が要求に一致しているかを確認する。結果を予想してから SQL を実行し、差があれば型、変換、条件の境界を順に見直すことで、誤りの原因を説明する。本細目で理解すべき範囲は、要求に合う基本的な日時型・期間型・関数を選び、表示と検索結果を根拠に検証できる段階まで。
キーワード ① SQL*Plus ② MERGE ③ INSERT ALL ④ 一時表 ⑤ 日時データ
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗総復習の各課題について、要求、選択した機能、実行した SQL、期待結果、実際の結果、修正点をまとめること。正答した問題も、別の機能ではなくその方法を選んだ理由を説明すること。MERGE と振分け、一時表と外部表、日時と期間について混同した点がないかを点検すること。データの値だけでなく保存期間や接続設定も確認したかを振り返ること。以後の設計演習で使うため、構文を丸ごと暗記する一覧ではなく、目的から機能を探せる自分の整理表を作成すること。
〖予習〗第21回の DB設計に向けて、身近な情報管理の仕組みを一つ選び、誰が何を登録し、何を調べたいかを文章にすること。画面に表示したい情報と、保存しておく必要のある情報を区別し、一件のデータが何を表すかを考えること。既習の主キー、外部キー、制約、正規化の役割を復習し、同じ情報を何度も保存した場合に起こる修正漏れを例で示すこと。要件定義、概念設計、論理設計、物理設計の順序を資料で確認し、各段階で何を決めるかを予想しておくこと。

21 DB設計 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第21回は、個々の SQL や管理機能の学習から、要求に合ったデータベースを設計する学習へ移る回である。アプリケーションで必要となる情報を整理し、要件定義から物理設計へ進む流れと正規化の役割を確認する。本回を基に、第22回で ER図の記述を学び、第23回以降の二つの設計・実装演習へ進む。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① アプリケーションにおけるDBの役割 ② DB設計の流れ ③ 正規化
細目レベル ① アプリケーションにおける DB の役割を、複数の操作や利用者から参照される情報を一貫した形で保持することとして捉える。入力画面にある項目をそのまま一表へ並べるのではなく、何を継続して管理し、どの情報を組み合わせて表示するかを整理する。演習では、観測記録や貸出記録などを例に、登録、変更、検索、集計の場面を挙げ、必要なデータを対応付ける。画面上で計算できる値と元になる保存データも分けて考え、保存する理由を説明する。既習の主キーや制約が入力の整合性を支えることを確認し、アプリケーションの処理と DB の構造を関連付ける。利用者が求める結果から必要な情報を見直し、保存するデータの不足や重複を点検する。本細目で理解すべき範囲は、アプリケーションの基本的な操作から保存・参照すべき情報を整理し、DB の役割を説明できる段階まで。
② DB設計の流れでは、要件定義、概念設計、論理設計、物理設計を、それぞれ何を明確にする段階かという観点で理解する。利用者の要求を読み、管理対象と関係を整理し、表とキーの構造へ変換し、使用する DBMS の型や制約を具体化するつながりを確認する。段階の名前を暗記するだけでなく、一つの要求が各段階でどのような表現へ変わるかを追う。演習では、必要な検索結果から管理対象を考え、その対象を表へ実装するまでの成果物を並べる。実装時に不足が見つかったら前の設計へ戻って修正することも学び、一方向に一度だけ進む作業とは考えない。決めた内容と未確定の条件を区別して記録し、後から設計理由を説明できるようにする。本細目で理解すべき範囲は、各設計段階の目的と成果物を区別し、小規模な要求を実装へつなぐ基本的な流れを説明できる段階まで。
③ 正規化では、一つの表へ異なる管理対象の情報を重複して入れたときに生じる追加・更新・削除の不都合を確認する。繰返し項目、キーの一部にだけ依存する属性、他の非キー属性を介して決まる属性を教材の例から読み、情報のまとまりを見直す。第1正規形から第3正規形への基本的な考え方を、表の分割前後のデータで確かめる。演習では、一行が何を表すかを定め、どのキーから各属性が決まるかを説明してから表を分ける。表を分割すること自体を目的にせず、関係をキーでつなぎ直して必要な情報を得られるかを確認する。重複が減った点と参照関係が必要になった点を整理し、業務のルールに基づく分割理由を記録する。本細目で理解すべき範囲は、基本的な依存関係と更新時の不都合を説明し、小規模な表を第3正規形を意識して整理できる段階まで。
キーワード ① 要件定義 ② 概念設計 ③ 論理設計 ④ 物理設計 ⑤ 正規化
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗要件定義から物理設計までの各段階について、決める内容と作成する成果物を自分の言葉でまとめること。授業で扱った例を使い、一つの要求が管理対象、表、型や制約へどのように対応するかを示すこと。正規化の例では分割前に起こる修正漏れなどの問題を挙げ、分割後にどのキーで情報を結び直すかを確認すること。表の数を増やすことを正規化の目的としないこと。アプリケーションで表示したい結果を実際の保存情報から得られるかも見直し、不足している条件を整理すること。
〖予習〗第22回の ER図に向けて、管理対象、属性、関係という三つの用語を復習すること。授業で扱った状況から二つ以上の管理対象を選び、それぞれ一件が何を表すかを説明すること。一方の一件に対して他方が何件関係できるか、関係する相手が必ず必要かを文章にすること。主キーと外部キーの役割を確認し、単に同じ名前の列があるだけで関係を決めてよいかを考えること。資料の ER図を読み、図の記号と説明文がどのように対応するかを予想して質問を用意すること。

22 ER図の記述方法 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第22回は、設計した管理対象と関係を ER図で表すための記述方法を学ぶ回である。第21回の設計の流れと正規化を踏まえ、エンティティ、属性、関係、多重度、キーを統一した表記で示す。図の見た目だけでなく業務ルールとの対応を確認する力を身に付け、第23回以降の設計演習で使う共通の記述基盤を整える。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① ER図(復習) ② ER図の記述ルール ③ ER図の記述演習
細目レベル ① ER図の復習では、エンティティを継続して区別・管理する対象、属性をその対象の性質、関係を対象間の結び付きとして捉える。表の見出しや画面項目を機械的に図へ移すのではなく、一件の対象が何を意味するかを確認する。演習では、既習の小さなデータ例から対象と属性を分け、どの情報がどの対象に属するかを説明する。関係線が引かれている理由を業務の文章へ戻って読み、単に名前が似ているという理由で結ばない。図から必要な検索が組み立てられるかも考え、関係が不足した場合と余分な場合を比較する。概念的な対象の整理と、実装に向けた表・キーの表現を区別し、授業でどの段階の図を扱うかを確認して読み進める。本細目で理解すべき範囲は、エンティティ・属性・関係を基本的な業務例から識別し、ER図の構成要素を説明できる段階まで。
② 記述ルールでは、授業で採用する ER図の表記に従い、対象名、属性、キー、関係、多重度を一貫して示す方法を学ぶ。図法によって記号が異なるため、異なる資料の記号を混在させず、凡例や授業資料の説明と対応付ける。一対多などの関係だけでなく、相手がゼロ件でもよいか、必ず一件以上必要かを業務文から読み取る。演習では、同じ関係を両方向から文章にし、記号がその内容を表しているかを確認する。主キーと外部キーを区別した表示を行い、実装時に参照する列を追えるようにする。名称の統一や線の読みやすさも点検し、第三者が関係を誤解しない図を目指す。未確定の条件は勝手に固定せず、確認事項として記録する。本細目で理解すべき範囲は、授業で指定された記号と表記を用い、キーと基本的な多重度・任意性を矛盾なく記述できる段階まで。
③ 記述演習では、小さな要求文を読み、対象、属性、識別方法、対象間の関係を整理してから ER図を作成する。図を描く順序にだけ従うのではなく、各要素の根拠となる文章を確認し、推測して決めた条件は区別する。演習では、一つの対象に複数の記録が結び付く例を用い、実際のデータを数件置いて関係の表現を検証する。多対多の関係を表で実装する場合は、中間に置く関連の表を検討し、その一件の意味と識別方法を説明する。完成後は図を文章へ読み戻し、元の要求と食い違わないかを点検する。属性の所属、キーの重複、関係の方向を見直し、必要な検索を図のどの経路で表せるかを確認して修正する。本細目で理解すべき範囲は、小規模な要求から基本的な ER図を作成し、具体的なデータ例と要求文に照らして検証できる段階まで。
キーワード ① ER図 ② エンティティ ③ 属性 ④ 多重度 ⑤ 主キー
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗作成した ER図について、各エンティティの一件の意味、属性の所属、主キー、関係の根拠を文章で説明すること。関係を両方向から読み、一件に対して何件が対応するか、相手が存在しない場合を許すかを確認すること。図と要求文が合わない箇所を修正し、変更理由も残すこと。複数の図法の記号が混ざっていないか、キーの区別が分かるかを点検すること。必要な検索を一つ挙げ、図のどの対象と関係を利用して結果を得るかを示し、他者が読める図に整えること。
〖予習〗第23回からの演習①に向けて、観測記録などの情報管理を例に、誰が何を記録し、どの結果を調べたいかを考えること。管理対象の候補となる名詞と、その対象を説明する項目を分けて書き出すこと。記録を追加する頻度、同じ対象に複数の記録が生じるか、過去の情報を残す必要があるかを確認する質問を用意すること。すぐに CREATE TABLE を書かず、まず状況と要求を理解する理由を説明できるようにすること。ER図の記号と正規化の基本も再確認しておくこと。

23 演習①:状況設定と属性洗い出し 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第23回は、演習①の状況を読み取り、管理対象と属性を洗い出す回である。第21回の要件定義と正規化、第22回の ER図の知識を実際の要求へ適用する。例えば環境観測の記録管理を題材に、何を一件として保存するかを整理し、次回の関係整理と ER図作成へ渡せる設計材料を準備する。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① 演習用シチュエーション設定 ② 属性の洗出し洗い出し ③ 属性のグループ化(実体)
細目レベル ① 状況設定では、演習①で扱う業務の登場人物、作業の流れ、保存する目的、必要な出力を確認する。例えば観測地点と観測記録を管理する状況では、地点を登録する作業と観測値を追加する作業を分けて考える。要求文に明示された条件と自分が補った前提を区別し、曖昧な部分を確認事項として記録する。演習では、誰が何をいつ登録し、後でどの条件で検索するかを一連の文章にする。画面の形や SQL の構文を先に決めず、業務上必要な情報と利用場面を対応付ける。例外として未入力の項目や一つの対象に複数の記録がある場合も想定し、扱う範囲を明らかにする。次回以降の設計判断がこの条件に立ち戻って説明できるよう、状況の要約を作成する。本細目で理解すべき範囲は、演習①の業務目的と基本的な入出力を整理し、明示条件・仮定・確認事項を分けて説明できる段階まで。
② 属性の洗い出しでは、状況文や必要な出力に含まれる情報を拾い、保存候補となる項目の意味を明確にする。名詞を抽出する方法を手掛かりにしつつ、すべての名詞が列になるとは考えず、管理対象の名前と対象を説明する値を区別する。演習では、地点名、観測日時、測定値などの候補について、何を表すか、どの場面で得られるか、単位や入力条件があるかを記録する。同じ意味の別名と、同じ名前で意味が異なる項目を点検し、用語を統一する。計算で得られる値や表示のためだけの情報は、そのまま保存すべきかを検討する。必要な検索結果を作るために不足している項目がないかを逆に確認し、属性一覧を根拠付きで整える。本細目で理解すべき範囲は、演習①の要求から主要な属性候補を抽出し、意味・入手場面・必要性を説明できる段階まで。
③ 属性のグループ化では、各項目が何を説明する情報かを基に、エンティティごとのまとまりを作る。観測地点そのものの情報と、地点で生じた個々の観測の情報を区別する例を用い、一行が表す事実を明確にする。演習では、属性一覧を対象別に配置し、同じ情報を複数のまとまりへ重複して置いていないかを確認する。識別子の候補を考え、その値が決まればどの属性が決まるかを説明して正規化の考え方へ結び付ける。繰返し項目を列の番号違いで増やす方法と、別の記録として扱う方法を比較する。暫定的なまとまりに具体的な数件のデータを入れてみて、追加や変更が不自然にならないかを点検し、次回の関係整理で確認する点を残す。本細目で理解すべき範囲は、属性を一件の意味と依存関係に基づいて分類し、演習①の基本的なエンティティ候補を整理できる段階まで。
キーワード ① 業務要件 ② 名詞抽出 ③ 属性 ④ エンティティ ⑤ 正規化
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗演習①の要求の要約、属性一覧、エンティティ候補を見直し、各項目を必要と判断した根拠を示すこと。要求文にある条件と自分で置いた仮定を区別し、未確認の点を一覧にすること。同じ意味の項目が別名で重複していないか、一つの名前で異なる意味を扱っていないかを確認すること。各まとまりの一件の意味を説明し、数件のデータ例を使って不自然な繰返しや修正漏れがないかを調べること。必要な検索結果を作るために不足している属性も点検し、修正理由を記録すること。
〖予習〗第24回に向けて、今回のエンティティ候補の間にどのような関係があるかを文章にすること。一方の一件が他方の何件と関係するかを両方向から考え、相手が存在しない場合を許すかも示すこと。識別子として使えそうな属性を選び、重複や値の変更が起きる可能性を確認すること。多対多の関係があれば、中間の記録が一件何を表すかを考えること。授業の ER図の記述ルールを復習し、関係、多重度、主キー、外部キーをどこへ記載するかを確認しておくこと。

24 演習①:ER図の作成演習 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第24回は、演習①で整理した対象と属性を基に、関係とキーを定めて ER図へまとめる回である。具体的なデータの対応から多重度を判断し、表として実装可能な構造へ進める。第25回のテーブル作成で列や参照先を迷わず設定できるよう、図と要求が一致することを確認する。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① 実体間の関係性整理(関連) ② ER図の作成演習 ③ 主キーと外部キー設定
細目レベル ① 関係性の整理では、演習①の各対象がどの業務上の事実によって結び付くかを確認する。例えば一つの地点に複数の観測記録がある場合、地点から記録を見る方向と記録から地点を見る方向を分けて説明する。関係が一対多か多対多かを名前だけで推測せず、要求文と具体的なデータの組合せで判断する。演習では、関係する相手がまだ存在しない例も用意し、任意性を確認する。多対多を表で実装する際は関連を表す対象を追加し、その記録の意味と属性を考える。不要な直接関係や、別の関係から導ける情報を重複して持たせていないかを点検する。判断が未確定な場合は条件を明記し、後で変更する必要がある箇所を分けて整理する。本細目で理解すべき範囲は、演習①の主要な対象間の関係を両方向から説明し、多重度と基本的な任意性を整理できる段階まで。
② ER図の作成では、前回の属性一覧と今回の関係整理を一つの図にまとめ、授業で指定された表記に統一する。各対象の一件の意味が分かる名前を用い、属性の所属と関係の根拠を図から追えるようにする。演習では、まず全体の関係を描き、具体的なデータを置いて要求する登録・検索が表現できるかを確認する。線の交差を減らすなど読みやすさを整えつつ、見た目の都合で必要な関係を省略しない。作成した図を文章へ読み戻し、元の業務条件と食い違う箇所を修正する。属性一覧と図で項目が抜けたり増えたりしていないかを照合し、変更があれば理由を残す。次回の実装で使用する成果物として、未確定の条件と確定済みの構造を明確にする。本細目で理解すべき範囲は、演習①の属性と関係を統合した ER図を作成し、要求と具体的なデータ例に基づいて点検できる段階まで。
③ 主キーと外部キーの設定では、各表の行を一意に識別する方法と、他の表の行を参照する方法を区別する。候補となる値に重複や未入力が生じないか、業務上変更される値ではないかを確認し、採用理由を説明する。演習では、主キー側の値と参照側の値を数件並べ、外部キーがどの行を指すかを確認する。外部キーの値が複数行で繰り返される場合と、主キーの一意性を混同しない。関連の表を置く場合は、組合せで一意になる条件も検討し、別の識別子を使う場合も必要な重複防止条件を残す。参照先と参照元の列の意味や型を対応付け、存在しない対象を参照しないための制約として実装へつながる記載を行う。本細目で理解すべき範囲は、演習①の行の識別方法と参照関係を定め、主キー・外部キーの配置と根拠を説明できる段階まで。
キーワード ① ER図 ② リレーションシップ ③ 多重度 ④ 主キー ⑤ 外部キー
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗完成した ER図を要求文と照合し、各関係の多重度と任意性を両方向から説明すること。各表の主キーを選んだ理由と、外部キーが参照する相手を明記すること。具体的な数件のデータを置き、重複する識別子や存在しない参照先が生じないかを確かめること。多対多を整理した場合は関連表の一件の意味も説明すること。前回の属性一覧から変更した箇所とその理由を残し、次回のテーブル作成で確認が必要な未確定事項を分けて整理しておくこと。
〖予習〗第25回のテーブル作成に向けて、ER図の各属性に対して列名、データ型、桁数、NULL の可否を考えること。主キー、外部キー、その他の制約をどの文で指定するかを既習の CREATE TABLE と照合すること。参照される表と参照する表を区別し、作成順序を考えること。登録するダミーデータを数件用意し、作成した表から何を検索すれば設計の正しさを確かめられるかを挙げること。必要なデータと期待する検索結果を実行前に準備する意味も説明できるようにすること。

25 演習①:テーブル作成 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第25回は、演習①の ER図を実際のテーブルとして実装し、データの登録と抽出で確認する回である。設計上の対象・属性・関係を、列、型、制約、結合条件へ対応付ける。図が完成した段階で終わらず、要求どおりのデータを保存し検索できることを検証し、演習②へ持ち越す改善点を整理する。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① CREATEによるテーブル作成 ② ダミーデータの追加 ③ 複数テーブルからのデータ抽出
細目レベル ① テーブル作成では、演習①の ER図から表名、列名、データ型、主キー、外部キーを読み取り、CREATE TABLE 文へ変換する。文字列の長さや数値の精度、日時の型、NULL の可否は保存する情報の意味に基づいて選ぶ。演習では、参照先となる表から作成するなど依存関係を確認し、必要な制約を明示して実行する。実行できたことだけで設計との一致を判断せず、表定義と制約の情報を確認し、図や属性一覧と照合する。エラーが出た場合は構文の誤りと参照先の不足を区別し、対象の表と列を確認して修正する。修正によって設計が変わった場合は ER図にも反映し、SQL と図が別々の内容にならないよう整える。本細目で理解すべき範囲は、演習①の設計に対応するテーブルと基本的な制約を作成し、定義を照合できる段階まで。
② ダミーデータの追加では、作成した表の構造と関係を検証できる小さなデータを用意し、INSERT により登録する。単に件数を増やすのではなく、一つの対象に複数の記録がある例や任意項目が未入力の例など、設計上の条件を確認できる組合せを選ぶ。演習では、参照先のデータを先に用意し、外部キーの値が意図した相手を指すことを確かめる。主キーの重複や存在しない参照先など、制約に反する試行も教材の範囲で行い、拒否された理由を説明する。正常なデータと検証用の誤ったデータを分けて記録し、失敗をそのまま放置しない。登録後は件数、識別子、主要な値を照合し、次の抽出演習で期待する結果を得るための前提が整っているかを確認する。本細目で理解すべき範囲は、設計条件を確かめるダミーデータを登録し、基本的な制約と参照関係の動作を検証できる段階まで。
③ 複数表からの抽出では、演習①の要求する出力を得るために、ER図の関係を JOIN の条件へ対応付ける。必要な列をどの表から取得するかを先に整理し、主キーと外部キーの関係から結合条件を記述する。演習では、手作業で作った期待結果と SQL の結果を識別子・件数・値で比較する。一対多の結合で行が増える理由を確認し、重複して見えるという理由だけで DISTINCT を加えて問題を隠さない。関係する記録がない対象も表示したい場合は、要求に応じて外部結合の必要性を考える。結果が合わないときは登録データ、結合条件、抽出条件の順に確認し、設計上の不足が原因なら図へ戻って見直す。実装と要求の対応を説明する。本細目で理解すべき範囲は、演習①の関係に沿った基本的な結合検索を記述し、期待する出力と照合して設計・実装を確認できる段階まで。
キーワード ① CREATE TABLE ② CONSTRAINT ③ INSERT ④ JOIN ⑤ 検証
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗演習①の ER図、CREATE TABLE 文、制約の確認結果、登録データ、抽出 SQL を一組の成果物として整理すること。図と実際の表定義に違いがないかを点検し、変更した場合は理由を記すこと。制約に反するデータを試した結果と、通常のデータを登録した結果を区別すること。結合検索では期待結果との一致を件数と値で確認し、行が増えた理由を説明すること。実装時に初めて分かった要求の曖昧さや設計の不足を挙げ、次の演習で改善する点を具体的にまとめること。
〖予習〗第26回からの演習②に向けて、機材の貸出記録など、演習①とは異なる業務で情報を管理する場面を考えること。利用者、管理対象、発生する記録を分け、誰が何を登録し何を確認したいかを文章にすること。演習①で使った表名や構造をそのまま流用してよいかを検討し、似ている点と異なる条件を整理すること。複数の対象を一つの手続で扱う場合や、同じ対象が繰り返し登場する場合の一件の意味を考え、次回確認する質問を準備しておくこと。

26 演習②:状況設定と属性洗い出し 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第26回は、演習②の新しい状況を読み取り、演習①で経験した要求整理を別の業務へ適用する回である。例えば機材の貸出管理を題材に、利用者、機材、貸出記録の意味を整理する。前の図や表を機械的に写さず、異なるルールから属性と対象を見直し、第27回の関係・キー設計へ進む。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① 演習用シチュエーション設定 ② 属性の洗出し洗い出し ③ 属性のグループ化(実体)
細目レベル ① 演習②の状況設定では、新しい業務の目的と作業の流れを確認し、演習①と共通する管理の考え方と異なる条件を分ける。機材の貸出管理を例に、利用者や機材の登録と、貸出・返却の出来事の記録を区別して整理する。演習では、誰がいつ何を操作し、どの情報を確認したいかを具体的な一連の場面として記述する。複数の機材を一度に扱うか、履歴を残すかなど、表の構造へ影響する条件を質問として挙げる。要求文にない条件を思い込みで固定せず、採用する仮定を明記する。前の演習の構造が使えるかを、名称ではなく一件の意味と関係から検討し、新しい状況に必要な入出力と範囲を定める。後の変更設計の基準となる当初の条件も残す。本細目で理解すべき範囲は、演習②の基本的な業務条件を整理し、演習①との違いと採用した前提を説明できる段階まで。
② 属性の洗い出しでは、演習②の要求と必要な帳票・検索結果から、保存すべき情報の候補を抽出する。利用者や機材の属性と、貸出・返却などの出来事に属する情報を分けて考え、日時や状態の意味を曖昧にしない。演習では、項目ごとに意味、値の例、入力の時点、必須か任意か、後から変わる可能性を整理する。似た名称の項目でも現在の状態と過去の事実は異なることを確認し、どちらを保持したいかを要求へ戻って判断する。表示用の集計値をそのまま保存する前に、元になるデータから得られるかを検討する。同義語や重複した項目を統一し、必要な出力を再現するために不足する属性を点検する。変更の可能性は未確定事項として分けて記録する。本細目で理解すべき範囲は、演習②の要求に対応する属性を抽出し、意味・登録時点・必要性を区別して整理できる段階まで。
③ 属性のグループ化では、演習②で管理する対象と出来事を区別し、どの識別子によって各属性が決まるかを考える。例えば機材自体の名称と、ある貸出での予定日を同じ対象の属性として扱わないよう、情報が属する一件の意味を明確にする。演習では、属性をまとまりに配置し、複数の機材を一つの貸出で扱う場合に明細などの単位が必要かを検討する。演習①と似た構造でも、業務の条件が違えば別のまとまりになることを説明する。繰返し項目や部分的な依存関係を確認し、正規化の観点から重複を見直す。数件のデータ例を置いて、追加、返却、属性変更が無理なく表現できるかを点検する。暫定的な対象と次回確認する関係を一覧にまとめる。本細目で理解すべき範囲は、演習②の属性を対象と出来事に基づいて分類し、基本的なエンティティ候補と識別単位を説明できる段階まで。
キーワード ① 業務要件 ② 名詞抽出 ③ 属性 ④ エンティティ ⑤ 正規化
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗演習②の要求の要約、属性一覧、エンティティ候補をまとめ、演習①からそのまま使えた考え方と変更が必要だった点を説明すること。各項目の意味と登録時点を確認し、現在の状態と過去の記録を混同していないかを点検すること。属性のまとまりごとに一件の意味を文章にし、具体的なデータ例で追加や変更が表せるかを確かめること。要求文にない仮定や未確認の条件を明記すること。次回の図作成で判断が必要な関係を挙げ、質問とその理由を整理しておくこと。
〖予習〗第27回に向けて、演習②の対象間の関係を両方向から文章にすること。一人の利用者に複数の記録がある場合や、一つの手続に複数の機材が含まれる場合を具体的なデータで考えること。多対多をそのまま表へ置かず、関連や明細の一件の意味と識別方法を検討すること。主キーの候補が重複しないか、業務上変更される可能性がないかを確認すること。ER図の表記を復習し、演習①で指摘された記号やキーの誤りを繰り返さないための点検項目を用意すること。

27 演習②:ER図の作成演習 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第27回は、演習②の対象と属性を関係・キーとともに ER図へまとめる回である。演習①の経験を活かしながら、複数の対象が一つの出来事に関係する場合など、新しい条件に応じた構造を検討する。第28回での実装に必要な参照先と識別方法を明確にし、図を具体的なデータで検証する。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① 実体間の関係性整理(関連) ② ER図の作成演習 ③ 主キーと外部キー設定
細目レベル ① 関係性の整理では、演習②の対象と出来事がどのルールで結び付くかを確認する。利用者、貸出の記録、対象機材などの関係を例に、一件の記録が複数の対象を含むかを要求から判断する。演習では、両方向の対応件数を文章にし、相手が未登録のまま存在してよい記録があるかを考える。多対多の関係を関連表で表す場合は、単に二つの識別子を置くだけでなく、関連自体に属する属性がないかを調べる。同じ対象が繰り返し現れる履歴の扱いも確認し、一度きりの関係と混同しない。数件のデータを配置して、予定した関係で必要な登録や照会ができるかを点検する。演習①の関係を写すのではなく、新しい要求に対応する根拠を示して構造を決める。本細目で理解すべき範囲は、演習②の業務条件から関係と多重度を整理し、関連や明細の必要性を基本的な例で説明できる段階まで。
② ER図の作成では、演習②の属性と関係を統合し、対象名、一件の意味、キー、参照先が読み取れる図へまとめる。演習①で用いた表記を引き継ぎ、異なるルールの記号を混ぜずに多重度や任意性を示す。演習では、利用者ごとの記録や対象ごとの履歴を取得する経路を図上で追い、必要な関係の不足や重複を確認する。属性一覧と図を照合し、図を描く途中で変更した所属や対象は理由とともに反映する。図から要求を文章へ戻し、登録できない事例や重複してしまう事例がないかを点検する。読みやすい配置を工夫しつつ、線を省略して意味を曖昧にしない。実装に使用する版を明確にし、次回の CREATE TABLE 文と対応付けるための基準として整える。本細目で理解すべき範囲は、演習②の要求を反映した ER図を作成し、属性一覧とデータ例を使って基本的な整合性を検証できる段階まで。
③ 主キーと外部キーの設定では、演習②の各対象と出来事を識別し、必要な参照関係を制約で表せるよう整理する。同じ利用者や機材が何度も登場する場合、相手の識別子だけでは個々の記録を区別できないことを具体例で確認する。演習では、単独の識別子と組合せによる識別を比較し、重複してはならない業務上の条件を明示する。外部キーが指す表と列を図上で確認し、参照する値の意味や型を対応付ける。任意の関係では未入力を許すかを要求から判断し、主キーの未入力不可と混同しない。数件の履歴データを置いて識別方法を検証し、同じ対象の繰返しと誤った重複を区別する。採用したキーが変更時にもどう機能するかを基本的な範囲で考える。本細目で理解すべき範囲は、演習②の対象と繰返し記録を識別するキーを定め、基本的な参照制約と重複防止条件を説明できる段階まで。
キーワード ① ER図 ② リレーションシップ ③ 多重度 ④ 主キー ⑤ 外部キー
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗演習②の ER図を読み戻し、対象間の関係、多重度、任意性を要求文と照合すること。同じ対象が繰り返し登場するデータを用意し、主キーで各記録を区別できるかを確認すること。関連表や明細を設けた場合はその一件の意味と属性の所属を説明すること。外部キーの参照先と型の対応を点検し、演習①から改善した点を記すこと。図、属性一覧、要求の要約に食い違いがあれば修正理由を残して統一し、実装に使用する確定版と未確認の条件を区別しておくこと。
〖予習〗第28回に向けて、演習②の各表の CREATE TABLE 文の下書きを作り、列名、型、桁数、制約を図と対応付けること。参照先を先に作成する順序を考え、必要なユーザや接続先も資料で確認すること。正常な登録例に加え、重複する識別子や存在しない参照先を含む検証例を用意すること。必要な検索結果を一つ以上手作業で作り、どの表をどの列で結合すれば得られるかを考えること。演習①で起きた型や列の対応の誤りを防ぐための確認項目も準備すること。

28 演習②:テーブル作成 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第28回は、演習②の ER図をテーブルへ実装し、登録と結合検索で確認する回である。演習①で学んだ設計と SQL の対応を新しい構造へ適用し、業務上の繰返しや関連を表現できるかを検証する。第29回の変更演習に備え、変更前の定義・データ・検索結果を明確な基準として残す。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① CREATEによるテーブル作成 ② ダミーデータの追加 ③ 複数テーブルからのデータ抽出
細目レベル ① テーブル作成では、演習②の確定した図を基に、各表の列と制約を CREATE TABLE 文として実装する。演習①の SQL を利用する場合も、名称だけを置き換えるのではなく、一件の意味、型、参照先、重複防止条件を新しい要求と照合する。演習では、表の作成順を依存関係から決め、実行後に定義と制約が意図した内容かを調べる。単に構文エラーが出なかったことを完成とせず、主キーや外部キーが必要な列へ設定されているかを確認する。修正が必要な場合は図と SQL の双方へ反映し、片方だけが古い状態にならないようにする。次回の変更演習で比較できるよう、今回作成した定義の版と採用した条件を記録する。実装の理由を要求へ戻って説明する。本細目で理解すべき範囲は、演習②の設計を基本的な表定義と制約として実装し、図と実際の定義の一致を確認できる段階まで。
② ダミーデータの追加では、演習②に特有の繰返し記録や関連を検証できる組合せを用意する。例えば同じ機材を異なる時点で扱う例と、一つの手続で複数の機材を扱う例を要求に応じて選び、どの条件を確認するデータかを明示する。演習では、参照先の行から順に登録し、主キーの一意性と外部キーの対応を確認する。正常に登録できる例と制約によって拒否される例を分け、誤ったデータが通った場合も設計を見直すきっかけとする。登録後は件数だけでなく記録の識別子と相手先を照合し、検索で期待する結果を得るための前提を整える。次回の変更前後を比較するため、基準となるデータを記録し、どの行を追加・変更したかが分かるようにする。本細目で理解すべき範囲は、演習②の関係と繰返しを確かめるデータを登録し、基本的な制約と参照先の正しさを検証できる段階まで。
③ 複数表からの抽出では、演習②の利用者や対象の情報と出来事の記録を組み合わせ、要求された出力を作る。ER図の関係を読み、各列の所属と結合条件を先に整理してから SELECT 文を記述する。演習では、関連表や明細を通る場合も必要な経路を省略せず、実際のデータの対応から期待する行数を予想する。結果が増えすぎた場合は結合条件の不足や一対多の関係を調べ、見かけ上の重複だけを消して対処しない。履歴のない対象を含めるかなどの条件は、要求に従って判断する。期待結果と値・件数を照合し、図や登録データに問題があれば原因を分けて修正する。完成した検索文と結果を変更前の基準として保存し、次回の影響確認へつなげる。本細目で理解すべき範囲は、演習②の関係を用いた結合検索を実装し、要求する出力を検証して変更前の基準を整理できる段階まで。
キーワード ① CREATE TABLE ② CONSTRAINT ③ INSERT ④ JOIN ⑤ 検証
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗演習②の表定義、制約、データ、検索文を図と照合し、要求した記録を正しく識別・参照できるかを確認すること。繰返し登場する対象や複数の関連を含む例で、期待結果と実際の結果を比較すること。正常例と制約違反の例の検証結果を分け、修正した場合は原因と変更箇所を記すこと。第29回で比較できるよう、現在の列定義、件数、主要な検索結果を基準としてまとめること。演習①から自力で進められた点と、まだ資料を参照する必要があった点も振り返ること。
〖予習〗第29回の変更演習に向けて、演習②の要求に新しい項目や条件が加わる場面を考えること。列を追加するだけでよい変更と、関係や制約の見直しが必要になる変更を分けて例を挙げること。既存の行がある表へ必須項目を加える場合、過去の行をどう扱うかを検討すること。ALTER TABLE、ADD、MODIFY の基本構文を資料で確認し、変更前後に調べる定義と検索結果を整理すること。新しい条件だけでなく従来の検索も正しく動くかを確認する理由を説明できるようにすること。

29 演習②:テーブル変更 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第29回は、演習②の状況変化に対応して、設計と既存テーブルを変更する回である。変更内容を SQL に直す前に、属性、制約、既存データ、検索への影響を整理する。第28回の基準と比較して新旧の条件を検証し、作成後も要求に応じて保守する視点を養う。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① 状況変化によるテーブル変更設計 ② ALTERによるテーブル変更 ③ ダミーデータの追加 ④ データ抽出確認演習
細目レベル ① 変更設計では、新たに加わった要求と従来の要求を比較し、何を変える必要があるかを明確にする。項目の追加、値の範囲の変更、関係の見直しなどを区別し、画面に一項目増えるという表現だけで表の変更方法を決めない。演習では、影響するエンティティ、属性、制約、検索を一覧にし、既存の行に新しい情報がない場合の扱いを考える。例えば新しい分類項目を追加する場合、過去の記録へ値を補うのか未入力を許すのかを要求に基づいて決める。ER図と属性一覧を更新し、変更前後の違いを説明できる形にする。今回の授業で実施する変更範囲を定め、既存データを残したまま変更する手順と確認方法を準備する。本細目で理解すべき範囲は、状況変化から設計への基本的な影響を整理し、既存データの扱いを含む変更案を説明できる段階まで。
② ALTER による変更では、決めた設計変更を ALTER TABLE の ADD や MODIFY などへ対応付ける。列の追加と既存列の定義変更を区別し、変更前の型、桁数、NULL の可否、制約を確認してから文を組み立てる。演習では、既存データが新しい条件を満たすかを先に調べ、満たさない場合は補完や手順の見直しを行う。DDL を通常の更新文と同じように後で ROLLBACK すればよいとは考えず、学習用の対象と変更前の記録を確認して作業する。実行後は定義情報を調べ、エラーがないことだけで意図した変更が完了したと判断しない。ER図と SQL の変更箇所を照合し、必要な制約が残っているかも点検する。変更の目的と結果を対応付けて説明する。本細目で理解すべき範囲は、基本的な列追加・定義変更を実施し、既存データの条件と変更後の定義を確認できる段階まで。
③ 変更後のダミーデータ追加では、新しく加わった条件を検証できるデータと、従来の条件を満たすデータを分けて用意する。新しい列へ値を入れた行だけでなく、未入力の場合や境界となる値も教材の範囲で考え、どの動作を確認するかを明示する。演習では、変更前から存在する行の状態を確認し、新規行との違いが要求に合っているかを調べる。新しい制約に反する試行は正常な登録例と区別し、拒否の理由または通ってしまった原因を説明する。追加する列の順番や型を見直し、以前の INSERT 文をそのまま実行してよいかを確認する。登録後は識別子と値を照合し、変更によって過去の記録や参照関係が不整合になっていないかを点検する。本細目で理解すべき範囲は、新旧の条件を比較できるデータを登録し、変更後の基本的な入力条件と制約の動作を検証できる段階まで。
④ データ抽出の確認では、新しく必要になった出力と、変更前から使用していた出力の両方を検証する。新しい列が表示できたことだけで変更を完了せず、既存の結合、抽出条件、集計に意図しない影響がないかを調べる。演習では、第28回の検索結果を基準にし、同じ対象について何が変わり何が変わらないはずかを先に整理する。過去の行に新しい値がない場合は、その表示や条件判定が要求と一致するかを確認する。結果の件数と識別子を比較し、差があればデータ追加による正当な変化と不具合を区別する。問題が見つかったときは検索文だけでなく設計や移行したデータも見直し、修正後に同じ確認を行う。変更理由と検証結果を一組にまとめる。本細目で理解すべき範囲は、変更後の新しい検索と既存検索を比較し、基本的な影響範囲と要求への適合を説明できる段階まで。
キーワード ① ALTER TABLE ② ADD ③ MODIFY ④ 制約 ⑤ 変更検証
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗変更前の要求、追加された要求、設計変更、実行した ALTER 文、検証結果を対応付けてまとめること。既存の行をどう扱ったかを明記し、新規行だけで変更の正しさを判断していないかを点検すること。新しい検索と従来の検索の両方について、期待結果と実際の件数・値を比較すること。差が出た場合は、データ追加による変化と不具合を区別して説明すること。図、表定義、登録用 SQL、検索文が同じ変更内容を反映しているかを確認し、残った課題を記録すること。
〖予習〗第30回の総復習に向けて、DB管理、応用 SQL、設計・実装の三分野で自力でできる操作と説明が必要な事項を整理すること。接続や権限の問題、SQL の選択の問題、表構造の問題を混同せずに原因を考えるための確認順序を用意すること。二つの演習の成果物を見直し、要求から ER図、テーブル、データ、検索へどうつながるかを一つの例で説明すること。変更演習で分かった保守上の注意も挙げ、最後の授業で重点的に確認したい点を具体的な質問としてまとめること。

30 環境データベースⅢ総復習 科目の中での位置付け 本科目では、環境データベースⅠ・Ⅱで学んだ SQL とデータベースオブジェクトの知識を土台として、Oracle Database の構築・運用管理、SQL の応用、データベース設計・実装を発展的に学修する。全30回の授業では、導入・接続・起動と停止・権限管理から、応用的なデータ操作、バックアップとリカバリ、実行計画へと学習を進め、後半では業務要件から ER図を作成し、テーブルと制約を実装する。さらに、要件変更に応じたテーブル変更とデータ抽出の確認を通して、安全性・整合性・保守性を意識しながらデータベースを設計・管理・活用できる力を養う。
第30回は、全30回で学んだ DB管理、応用 SQL、DB設計・実装を総合的に復習する回である。構築して接続する段階から、適切な SQL を選び、要求に合う構造を実装・変更する段階までを関連付ける。個別の手順を再現するだけでなく、操作や設計の理由を説明し、今後のシステム開発で活用するための課題を明確にする。

ミック 『達人に学ぶDB設計 徹底指南書』、翔泳社、2023
コマ主題細目 ① DB管理 ② Silver SQL ③ DB設計と実装
細目レベル ① DB管理の復習では、CDB と PDB の構成、接続、起動・停止、ユーザとロール、権限、バックアップと復旧を関連付けて整理する。与えられた状況で何を確認すべきかを考え、接続できない問題と接続後の操作権限の問題を区別する。演習では、管理対象、接続しているユーザ、現在の状態を明らかにしてから必要な操作を選び、結果を確認する。保全についてはバックアップの時点と利用可能な情報を基に、どこまで戻せるかを説明する。実行計画や索引の知識も振り返り、結果の正しさと性能の確認を分ける。すべての管理機能を列挙するのではなく、授業で扱った代表的な場面に対して、操作順序と判断の根拠を一連の流れとして示す。本細目で理解すべき範囲は、既習の基本管理を状況に応じて選択し、対象・状態・権限・保全の観点から結果を説明できる段階まで。
② Silver SQL の復習では、本科目で扱った SQL*Plus、NULL関数、MERGE、マルチテーブル INSERT、一時表、外部表、日時データを目的別に整理する。ここでは授業で学んだ範囲の確認を行い、資格試験の全範囲を網羅したと判断しない。演習では、更新が必要な場面、入力を振り分ける場面、中間結果を保持する場面などを読み、適切な機能を理由とともに選ぶ。条件の重なり、NULL、保存期間、型の違いなど、結果を変える要因を含むデータで検証する。構文が実行できたことと要求を満たしたことを区別し、期待する行と値に照らして結果を説明する。誤りがあれば入力、構文の選択、条件指定を順に見直し、別の場面へ応用するための確認事項を整理する。本細目で理解すべき範囲は、本科目の応用 SQL を用途から選び、境界条件を含む基本的な例で実行結果を検証できる段階まで。
③ DB設計と実装の復習では、要求整理、属性抽出、正規化、ER図、キー設定、テーブル作成、データ登録、検索、変更の流れを一つの成果物で説明する。二つの演習を比較し、構造が似ている場合も業務ルールの違いから判断が変わることを確認する。演習では、必要な出力を図のどの対象と関係で表し、どの制約と SQL で実現したかを追う。設計の見た目や実行成功だけを完成の基準とせず、具体的なデータと期待結果を用いて検証する。変更が加わった場合は既存データと既存検索への影響を整理し、図と実装を同時に修正する必要性を説明する。最後に、自分で判断できる範囲と今後深める課題を明確にし、学習の成果を再利用できる形へまとめる。本細目で理解すべき範囲は、小規模な要求を設計・実装・検証・変更へつなぐ流れを説明し、成果物の基本的な整合性を確認できる段階まで。
キーワード ① DB管理 ② SQL ③ ER図 ④ テーブル設計 ⑤ 総合演習
コマの展開方法 社会人講師 AL ICT PowerPoint・Keynote 教科書
コマ用オリジナル配布資料 コマ用プリント配布資料 その他 該当なし
小テスト 「小テスト」については、毎回の授業時間内に、LMS上において当該コマの小テスト(難易度表示付き)を実施します。
復習・予習課題 〖復習〗全30回の学習を、DB管理、応用 SQL、設計・実装の三分野で整理し、代表的な操作と判断の理由を説明すること。総復習で誤った問題は正答を書き直すだけでなく、どの情報を見落とし、何を確認すれば防げたかを記すこと。二つの演習の要求、ER図、定義、データ、検索を対応付け、食い違いが残っていないかを点検すること。変更前後の検証結果も整理すること。今後の開発で参照できるよう、目的から手順や成果物を探せる形にまとめ、未習熟の事項を具体的に挙げること。
〖予習〗本科目の終了後に取り組む発展学習として、小規模な情報管理の題材を一つ選び、利用者の要求から設計・実装・検証までの計画を作ること。授業で使った題材をそのまま写すのではなく、管理対象、記録の単位、必要な検索、変更の可能性を自分で整理すること。接続と権限、バックアップ、データ型や制約、期待結果の確認を計画に含めること。未習熟の事項は授業資料の該当箇所へ対応付け、何を試せば理解を確かめられるかを示すこと。今後のシステム開発や自主学習への準備としてまとめること。

履修判定指標
履修指標履修指標の水準キーワード配点関連回
Oracle Databaseの構築・接続・権限管理 【★初級】
・Oracle Databaseの導入手順と初期設定の基本を理解している。
・CDBとPDBの構成と役割を理解している。
・SQL*Plusによるローカル接続・リモート接続の違いを理解している。
・Windowsサービス、CDBの起動・停止、PDBのオープン・クローズの関係を理解している。
・ユーザー、ロール、システム権限、オブジェクト権限の役割を理解している。
【★★中級】
・演習環境において、導入・初期設定、CDB・PDBの作成、接続、起動・停止、ユーザー・ロールの作成と権限付与を、手順と対象を確認して実行できる。
【★★★上級】
・接続先、稼働状態、実行ユーザー、権限を区別して管理上の問題を確認し、必要最小限の権限を意識した操作と、その結果の検証方法を説明できる。
Oracle Database,インストール,CDB,PDB,SQL*Plus,ローカル接続,リモート接続,Windowsサービス,STARTUP,SHUTDOWN,ユーザー,ロール,システム権限,オブジェクト権限,GRANT 25 1-8,30
SQL*Plusと応用SQL・多様なデータの取扱い 【★初級】
・SQL文とSQL*Plusコマンド、DESCRIBE、置換変数、DEFINE/UNDEFINEの役割を理解している。
・NVL、NVL2、NULLIF、COALESCEの基本的な使い方を理解している。
・MERGE、無条件・条件付きINSERT ALL、INSERT FIRSTの基本構文を理解している。
・一時表、外部表、SQL*Loader、ORACLE_DATAPUMPの用途と違いを理解している。
・日時型、タイムゾーン、現在日時、期間データ型の基本を理解している。
【★★中級】
・処理の目的に応じてSQL*Plusの操作、NULL関数、MERGE、マルチテーブルINSERT、一時表・外部表、日時・期間の処理を選択し、基本的な操作やSQLを実行できる。
【★★★上級】
・NULLの有無、一致条件、挿入先の振分け、データの保持期間、外部データの利用方法、タイムゾーンの違いを考慮し、期待する結果と実行結果を照合してSQLの適否を説明・検証できる。
DESCRIBE,置換変数,DEFINE,UNDEFINE,NVL/NVL2,NULLIF,COALESCE,MERGE,INSERT ALL/FIRST,一時表,外部表,SQL*Loader,ORACLE_DATAPUMP,日時型,タイムゾーン,INTERVAL 25 9-15,19-20,30
バックアップ・リカバリ・性能管理 【★初級】
・バックアップの目的、データ破損の例、リストアとリカバリの基本的な役割を理解している。
・実行計画、EXPLAIN PLAN、AUTOTRACEの役割を理解している。
・索引設計とオプティマイザ統計がSQLの実行方法に関わることを理解している。
【★★中級】
・演習環境でバックアップとリカバリの基本手順を実行し、復旧結果を確認できる。また、実行計画や統計情報を確認し、検索条件に応じた基本的な索引を検討できる。
【★★★上級】
・障害の状態と復旧に必要な情報を整理して復旧結果を検証し、性能面ではSQLの条件、索引、統計、実行計画を関連付けて改善前後を比較し、安全性と更新時の負担を含めて判断の根拠を説明できる。
バックアップ,データ破損,リストア,リカバリ,実行計画,EXPLAIN PLAN,AUTOTRACE,索引設計,オプティマイザ統計,SQL実行 10 16-18,30
要件整理・正規化・ER図によるデータベース設計 【★初級】
・アプリケーションにおけるデータベースの役割と、要件整理から設計・実装へ進む流れを理解している。
・属性、エンティティ、関係、多重度、正規化の基本を理解している。
・ER図の記述ルールと、主キー・外部キーの役割を理解している。
【★★中級】
・提示された業務の状況から必要な属性を抽出・分類し、正規化を意識してエンティティと関係を整理し、主キー・外部キーを備えた基本的なER図を作成できる。
【★★★上級】
・二つの演習の要件の違いを捉え、一件の記録の意味、属性の依存関係、多重度、任意性、キーの妥当性を具体的なデータ例で検証し、整合性・保守性を考慮した設計の根拠を説明できる。
業務要件,属性抽出,エンティティ,正規化,ER図,リレーションシップ,多重度,任意性,主キー,外部キー 20 21-24,26-27,30
テーブル実装・要件変更・データ検証 【★初級】
・ER図とテーブルの対応、列・データ型・主キー・外部キー・各種制約の基本を理解している。
・CREATE TABLE、INSERT、JOINによる表作成・データ追加・複数表の検索の基本を理解している。
・ALTER TABLEによる変更と、既存データ・制約・検索への影響を確認する必要性を理解している。
【★★中級】
・設計したER図からテーブルと制約を作成し、検証用データを追加して複数表から必要な情報を抽出できる。また、変更要件に応じて表定義を変更し、変更後のデータと検索結果を確認できる。
【★★★上級】
・要件、ER図、表定義、登録データ、検索結果の対応を検証し、正常例と制約違反の例で整合性を確認できる。要件変更時には既存データと従来の検索への影響を整理し、変更前後の結果に基づいて設計・実装の妥当性を説明できる。
CREATE TABLE,データ型,PRIMARY KEY,FOREIGN KEY,制約,INSERT,検証用データ,JOIN,ALTER TABLE,ADD,MODIFY,要件変更,整合性,変更前後の検証 20 25,28-30
評価方法
評価基準 評語
    学習目標をほぼ完全に達成している・・・・・・・・・・・・・ S (100~90点)
    学習目標を相応に達成している・・・・・・・・・・・・・・・ A (89~80点)
    学習目標を相応に達成しているが不十分な点がある・・・・・・ B (79~70点)
    学習目標の最低限は満たしている・・・・・・・・・・・・・・ C (69~60点)
    学習目標の最低限を満たしていない・・・・・・・・・・・・・ D (60点未満)
教科書
参考文献
実験・実習・教材費