目指せ!ORACLE MASTER Platinum DBA 2019合格
- ORACLE Certified Master DBA 2019 -
まずは最初の記事をチェック!
試験概要
オラクルマスター Platinum DBA 2019(Oracle Certified Master)を目指す方に、合格者の観点からアドバイスを送ります。
当然守秘義務がありますので、主に試験概要ページから参照可能な情報の読み解き方のアドバイスになります。
何回かに分けていきたいと思います。
全体目次
第1回:試験概要
第2回:学習方法(インストラクターのアドバイスを読み解く)
第3回:実機演習環境を整える
第4回:試験範囲の予想(Platinum試験とGold試験)
第5回:練習問題1 PDBの作成
第6回:練習問題2 表領域の管理
第7回:練習問題3 リカバリカタログの管理
第8回:練習問題4 フラッシュバック・データベースの構成
第9回:練習問題5 パーティションの管理
第10回:練習問題6 外部表の作成★本記事です
~ ネタがあれば続けていきたい ~
本記事の前提
オラクル社公式サイトで公開されているPlatinum試験のチェックリストと、
GoldおよびPlatinumなどの公開された学習コンテンツ、ドキュメント等からの予想問題になります。
実試験の内容とは一切関係ありません。
試験勉強するときの考え方
Platinum DBA 2019 実技試験は、その名のとおり「実技」です。
試験勉強には、実機での演習がかかせません。
試験対策問題集はリリースされていないため、自分で練習問題を考えていく必要があります。
それではチェックリストの「外部表」に関するマニュアルをみてみましょう。
Platinum DBA 2019の試験チェックリストには「外部表の作成」という項目があります。
マニュアルを探してみると前述のとおり「管理者ガイド」があり、
そのなかにチェックリストと同じ章名の「外部表の作成」という章があります。
他にも多くの章がありますが、まずはここをみてみましょう。
2つのマニュアルにそれぞれオプションが多数のっていますので、確認しておきましょう。
まずは外部表とは何か、外部表のアクセスパラメータには2種類あることを理解しましょう。
外部表とは?
CSVファイルやexpdpで作成したdmpファイルを、
SELECT時に直接読み取って結果を返すことができます。
読み取りの時に使用する内部技術(アクセスドライバ)によって2種類あります。
「ORACLE_LOADERアクセス・ドライバを指定した外部表」と「ORACLE_DATAPUMPアクセス・ドライバを指定した外部表」です。
いずれも作成できるようにしておきましょう。
SQLのキーワードはORGANIZATION EXTERNALです。
また読み取りが基本的な使い方ですが、DATAPUMPアクセス・ドライバを使うと、テーブルに格納されているデータをdmpファイルとして出力も可能です。expdpコマンドを使用せずともdmpファイルを出力できるのは驚きです。これらもマニュアルに記載されているので、みてみましょう。
以下はマニュアルの記述を問題文形式にした練習問題です。
練習問題
こちらは、★をつけた問題は1問あたり5分以内を目指してください。
外部表を作成以外の問題(練習1,2,4など)は1分未満を目指しましょう。
練習問題1.
・ディレクトリオブジェクト def_dir1 を作成してください。
ディレクトリオブジェクトがさすディレクトリは任意の場所でかまいません。
練習問題2.
・練習問題1で作成したディレクトリオブジェクトに、CSVファイル info.dat を作成します。
ファイルの内容は以下4行としてください。
1行目は列名で、2行目以降がデータです。
employee_number,employee_last_name,employee_hire_date
1,Scott,12/01/1993
2,Tiger,01/12/2021
3,Ben,03/21/1974
練習問題3.★
・以下の外部表 emp_load を作成してください。
ORACLE_LOADERドライバを使用して、info.dat の内容が参照できるようにします。
< emp_load表 >
employee_number CHAR(5)
employee_last_name VARCHAR2(20)
employee_hire_date DATE
練習問題4.
・emp_load表をSELECTし、3行参照できることを確認してください。
※ポイント:Create Tableが成功しても、Selectでエラーになることが多くあります。かならず確認しましょう。
練習問題5.
・以下の2つのCSVファイルを作成してください。
<deptxt1.datファイル>
deptno,dname,loc
10,ACCOUNTING,NEW YORK
20,RESEARCH,DALLAS
30,SALES,CHICAGO
40,OPERATIONS,BOSTON
<deptxt2.datファイル>
dname,loc,deptno
ACCOUNTING,NEW YORK,11
RESEARCH,DALLAS,21
SALES,CHICAGO,31
OPERATIONS,BOSTON,41
練習問題6.
・以下の外部表を作成してください。
ORACLE_LOADERドライバを使用して、2つのCSVファイル の内容が参照できるようにします。
< deptXT表 >
deptno number(2)
dname varchar2(14)
loc varchar2(13)
SELECTすると以下のように参照できるようにします。
DEPTNO DNAME LOC
------------------- --------
10 ACCOUNTING NEW YORK
11 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
21 RESEARCH DALLAS
30 SALES CHICAGO
31 SALES CHICAGO
40 OPERATIONS BOSTON
41 OPERATIONS BOSTON
練習問題7.
・emp_load表をコピーして emp_load2 を作成してください。
この表は外部表ではなく、通常の表とします。
データは入っている状態としてください。
練習問題8.★
・以下の外部表 emp_dmp を作成してください。
ORACLE_DATAPUMPドライバを使用して、emp_xt.dmp に「出力」します。
データはemp_load2表をSELECTしたものを使用します。
練習問題9.★
・以下の外部表 emp_dmp_output を作成してください。
ORACLE_DATAPUMPドライバを使用して、emp_xt.dmp を読み込みます。
< emp_dmp_output表 >
employee_number CHAR(5)
employee_last_name VARCHAR2(20)
employee_hire_date DATE
考え方のまとめ
上記は一番基本的な外部表についての問題です。
その他、いろいろな外部表、オプションがあります。
マニュアルを中心に確認しておきましょう。