ORACLE MASTER Bronze DBA |オラクル認定資格試験
ORACLE MASTER Bronze DBA 2019
試験概要
試験番号: 1Z0-085-JPN
試験時間: 120分
出題数: 70問
合格ライン: 65%
試験料:32,340円(税込)
Oracle University
Webアプリ
Oracle データベース管理の概要
1-1 データベースの基礎知識
1-1-1 データベースとは
データベースの構築や運用にはDBMSを使用する
DBMS:Database Management System
Oracle DatabeseもDBMSの1つ
データベースが備えるべき要件
- 大量のデータを管理できる
- データを復習の利用者で共有し、同時に利用できる
- データを高速に参照・変更でき、パフォーマンスに優れる
- データが破損したり、障害が発生しても、速やかに復旧できる(可能性)
- ユーザーごとにアクセスできるデータや実行できる操作が決まっていて、不正なアクセスや操作を防止できる(セキュリティ)
1-1-2 リレーショナルデータベース
リレーショナルデータベース: データを表形式で整理したデータベース
RDBMS:Relational Database Management System
OracleもRDBMSでもある
リレーショナルデータベースの表・列・行
表:テーブル
列:カラム
行:レコード
列にはデータ型を定義する
データ型例
列名 | データ型 |
---|---|
order_id | 文字列型 |
order_date | 日付型 |
dish_name | 文字列型 |
dish_num | 数値型 |
- リレーショナルデータベースは、表(テーベブル)にデータを格納する。
- 表は、列 (カラム)と行(レコード)で構成される。
- 列には列名とデータ型(格納するデータの種類)を指定する。
- データベースの管理を行うソフトウェアをデータベース管理システム(DBMS)という。特に、リレーショナルデー食べ0巣の管理を行うソフトウェアをリレーショナルデータベースシステム(RDBMS)という。
リレーショナルではないデータベース
データベースには、リレーショナルデータベースの他に、階層型データベースやネットワーク型データベースなどの種類がある。
1-2 SQLの基礎知識
1-2-1 SQLとは
SQL:Structured Query Language
SQLはデータベースにおける共通言語で、データの参照(問い合わせ、検索)や変更(追加・更新・削除)を行うことができる。
SQLの分類
分類 | コマンド | 説明 |
---|---|---|
データ検索 | SELECT | 表に格納された行の参照(問い合わせ、検索) |
データ操作言語(DML:Data Manipulation Language) | INSERT | 表への行の追加(挿入) |
UPDATE | 表に格納された行の更新 | |
DELETE | 表に格納された行の削除 | |
データ定義言語(DDL:Data Definition Language) | CREATE | オブジェクトの作成 |
DROP | オブジェクトの削除 | |
ALTER | オブジェクトの定義変更 | |
TRUNCATE | 表に格納された全ての行を一括削除(切り捨て)| | |
トランザクション制御 | COMMIT | トランザクションの確定 |
ROLLBACK | トランザクションの取り消し | |
データ制御言語(DCL:Data Control Language) | GRANT | 権限の付与 |
REVOKE | 権限の取り消し(剥奪) |
1-2-2 SQLコマンドの種類と特徴
データ検索
SELECTコマンドを使う。
SELECTコマンドによるデータ参照
menu表にある全てのデータを参照する
SELECT * FROM menu;
WHERE句による検索条件の指定
必要な行だけ得るには、WHERE句を使って対象の行にマッチする検索条件を指定する。
SELECT price FROM menu
WHERE dish_name = 'ビーフカレー';
SQLではデータの位置やアクセス手順を指定しない
データ操作言語(DML)
表のデータを追加・更新・削除するときに使用するタイプのコマンドは、データ操作言語に分類される。
INSERTコマンド
表に行を追加する場合にINSERTコマンドを使う。
INSERT INTO menu VALUES ('カツカレー',900);
DELETEコマンド
行を削除する場合は、DELETEコマンドを使用する。WHERE句で削除する行を指定する。
DELETE FROM menu
WHERE dish_name = 'ビーフカレー';
データ定義言語(DDL)
表などのオブジェクトを作成・変更・削除するタイプのコマンドは、データ定義言語に分類される。
- CREATEコマンドは、表などのオブジェクトを作成する。
- DROPコマンドは、表などのオブジェクトを削除する。
- ALTERコマンドは、オブジェクトの定義を変更する。列の追加・削除など。
TRANCATEコマンド
TRUNCATEコマンドは、表内の全ての行を削除するDDL。
まとめ
- DELETEは条件にマッチした表内の行を削除するDML
- DROPは表などのオブジェクトを削除するDDL
- TRUNCATEは表内の全ての行を削除するDDL。表自体は削除されない。
トランザクション制御
トランザクションは、処理結果が中途半端な状態になるのを防止する役割をする。
トランザクションで中途半端な状態になることを防止する
- トランザクションに含まれる2つのUPDATEコマンドの両方が成功したら、トランザクション全体の成功とみなす。
- トランザクションに含まれる2つのUPDATEコマンドのいずれかが失敗したら、トランザクション全体が失敗したとみなす。この時は、そのトランザクションで実行した処理を全て取り消し、トランザクション実行前の状態に戻す。
このトランザクションの動作により、処理結果が中途半端な状態を防止できます。この特性をトランザクションの原子性と呼ぶこともある。
トランザクションの開始と確定/取り消し
UPDATEコマンドの実行でトランザクションが開始、
COMMITコマンドの実行でトランザクションがコミットされる。
ROLLBACKコマンドの実行でトランザクションがロールバックされ、変更処理が取り消される。
暗黙のコミット
トランザクション実行中にDDLコマンドを実行すると、そのトランザクションは、コミットされる。これを暗黙のコミットと呼ぶ。
データ制御言語(DCL)
- GRANTコマンドで、ユーザに権限を付与できる。
- REVOKEコマンドで、与えた権限を剥奪できる。
まとめ
- リレーショナデータベースに格納されたデータを参照・変更したりするには、SQLを使う。
- SQLには、データの参照・変更以外に、表んどのオブジェクトの定義・権限・トランザクションの制御などの機能がある。
- 機能の種類に応じて、SQLはデータ検索、データ制御言語、データ定義言語、トランザクション制御、データ制御言語に分類される。
- SQLでは、データの物理的な位置や処理の順序を指定しない。
- トランザクション実行中にDDLまたはDCLを実行すると実行中のトランザクションは暗黙的にコミットされる。
1-3 Oracleデータベースの概要
1-3-1 Oracleはクライアント/サーバーシステム
1-3-2 Oracleを使用する流れ
①Oracleソフトウェアをインストールする
データベースサーバーに、Oracleソフトウェアをインストール
②Oracleデータベースを作成する
DBCA(Oracle Database Configuration Assistant)で、データベースを作成する。
③アプリケーション用のユーザーを作成する
データベースを作成すると、SYSユーザーやSYSTEMユーザーなどの管理用ユーザーが事前に作成される。これらのユーザーでデータベースにログインして、アプリケーション用のユーザーを作成する。
④ユーザーに権限を付与する
権限が与えられていないと処理を実行できない。
Discussion