Choco Soft

Nadesiko DE RDB

Choco Soft header image 2

業務の雄【ORACLE】を使いこなそう!

2008年07月03日 · コメント(0) · 特集, 荒ぶる野生の王【ORACLE】

#———————————————-
#■Oracleとは、どんなRDBなのか?■
#———————————————-
Oracle社が作成、販売、サポートをしている商用RDBです。
通常、企業のシステムで利用されているRDBと言えばまず【Oracle】です。
ほとんど全ての業務において利用実績があり、その信頼性は右に出るものがありません。
RDBとしての構造も、他のRDBとは一線を画しておりこのRDBを理解するにはまず構造からでしょう。
RDBとしてのスピードは飛びぬけたものではありませんが、多数による同時アクセスに対するロック、
障害時のリカバリ機能において常に他のRDBを一歩リードしてます。
ただし、機能の豊富さに比例して初心者が容易に扱えるような代物では無く、その機能を十全に発揮
させるにはチューニングが必要になります。
車で言えば、そのパフォーマンスは圧倒的ですが乗る人を選ぶフェラーリのようなRDBと言えましょう。

#———————————————-
# ■ 1.基礎知識 ■
#———————————————-
ODBCは、windowsでも標準で持っている。しかし細かい設定などはORACLEクライアントをインストールしないと難しい。
なでしこで単純に操作するだけならば、windows標準でOK。
直接コマンドを発行してDBを操作したい場合は、ORACLEクライアントに付いているSQL*PLUSなどが必要になります。
尚、ORACLEクライアントは正式にORACLEを購入したユーザーにしか手に入りません。メーカーが無償提供していないのです。

#————————————————-
#■ 2.なでしこで対応しているORACLEのバージョンは? ■
#————————————————-
2008年7月1日現在での稼動実績:8i,9,9i,10g,11g

#——————————————————
#■ 3.基本的なORACLE用SQL文について ■
#——————————————————
・全テーブル一覧取得:「select * from all_tables」
・テーブル一覧取得:「select * from user_tables」
・テーブル一覧取得:「select * from tab」//こちらはVIEWも取得
・インデックスの一覧取得:「select * from user_ind_columns」
・指定した表のインデックス一覧取得:「select column_name from user_ind_columns where table_name = ‘表名’」
・ユーザー名の一覧取得:「select username from user_users」
・ユーザー名の一覧取得:「select user from dual」
・DBの文字コード取得:「select * from NLS_DATABASE_PARAMETERS where PARAMETER = ‘NLS_NCHAR_CHARACTERSET’」

#——————————————————
#■ 4.ORACLEクライアントを導入されている方へ ■
#——————————————————
ご存知の方がほとんどだと思いますが、一応設定ファイルの場所や変更方法をチラっと。
・接続用設定ファイルの場所と変更「~oracle/network/admin/tnsnames.ora」//オラクルをインストールしたドライブでこのファイルを探して下さい。
で、下のように記述をして下さい。(漢字のところだけ、ご自分の環境に合わせて変更願います。)
<接続文字列が二箇所、ホスト名、ポート番号>ですね。
#-----------------------------------
接続文字列 = (DESCRIPTION =(ADDRESS = (PROTOCOL = TCP) (HOST = ホスト名) (PORT = ポート番号))(CONNECT_DATA = (SID = 接続文字列)))
#-----------------------------------

#————————————————————
■ 5.ID、パスワード、接続文字列を手に入れる。 ■
#————————————————————
なでしこでORACLEに接続する為には、最低限次の情報が必要です。
【1】ORACLEが入っているパソコン名もしくは、そのパソコンのIPアドレス
【2】ORACLEが使っているポート番号
【3】ORACLEに接続する時のID、パスワード、接続文字列
【4】ODBCドライバまず【1】ですが、<4.ORACLEクライアントを導入されている方へ>を参考にして下さい。
会社で使っている場合は、大体そこで情報が手に入りますよ(w【2】も同様です。
【3】が問題ですね。
接続文字列に関しては、【1】、【2】と同様の手順で手に入りますが、IDとパスワードはきちんと管理しているシステム部がいると難しいかも知れません。
【4】については、Windowsが標準で持ってますのでそれを利用して下さい。
※ま、それだと駄目な時がありますが、その時はあきらめてください(wその時は純正じゃないと多分、接続できないと思います。

#——————————————————–
#■ 6.なでしこでSQL*PLUSを使おう。 ■
#——————————————————–
ORACLEのSQL*PLUSには、普通のSQL文では実現できない命令も実装してます。
なでしこでSQL*PLUSを使ってみましょう。

#————————————————–
#サンプル1(SQL*PLUSでORACLEに接続)
CMD=「SQLPLUS ID/PASSWORD@接続文字列」CMDを起動待機
#————————————————–
#サンプル2#画面には出力させずに、バッチファイルを実行させる。
CMD=「SQLPLUS ID/PASSWORD@接続文字列 @F:\oracle\product\10.2.0\client_1\BIN\silent.sql」CMDを隠し起動待機
#——————————————–

バッチファイルの記述は、こんな感じです。
#———————————————–
set feedback offset heading offset pagesize 0set verify offselect * from dual;quit
#上記内容を「silent.sql」という名前で保存して、サンプル2を実行して見て下さい。
「silent.sql」のフルパスを変更するのを忘れないように。
※SQL*PLUSの命令や変数については、このHPの質問掲示板をご覧下さい。右下のLINKから辿れます。

#————————————————————–
#■ 7.いよいよプログラムサンプルです。 ■
#————————————————————–
なでしこでOracleの中身を見るビューワーを作成して見ましょう。
#では、ここから。空白(スペース)は、何故か消されてしまうので□□に置き換えます。
#パブリック変数宣言//全体に関わる変数
グリグリとは配列
#初期設定
グリグリ=「テーブル名称,テーブルスペース名称」//表題です。
VIEWとはボタン//閲覧ボタンの作成
そのクリックした時は
□□ビュワ

ENDとはボタン//終了ボタンですね。
そのクリックした時は
□□終わる。

#グリッド部品の配置
オラグリッドとはグリッド//グリッド部品です。
そのアイテムはグリグリ

●ビュワ
#ローカル変数宣言//このモジュール内だけの変数
□□ORAとは配列#DB接続処理
□□DBユーザーID=「ここにIDを入れて下さい」
□□DBパスワード=「ここにパスワードを入れて下さい」
□□「ここに接続文字列を入れて下さい」をORACLE開く
□□「select * from user_tables」をSQL実行//テーブル一覧取得
□□ORA=DB結果全部取得
□□DB閉じる
#グリッドに表示させる変数に、テーブル情報を追加。
□□グリグリにORAを配列追加
□□オラグリッドのアイテムはグリグリ
□□戻る。

#ここまでーこんな感じです。あとは、みなさんでどんどんカスタマイズしちゃって下さい。
ちょっと早いかも知れませんが、一旦ここで締めます。
他にも検証しないとならないDBやAPIがありますので^^;それでは、この特集がみなさんの糧になるように・・・。

タグ :

コメント(0)

コメントを受け付けておりません。