Oracle Database Bronzeの勉強を始めました。

投稿日:2017-08-03

業務でOracleを使ってます。

DBへの接続と簡単なSQLの確認ぐらいだったら、SQLDeveloperとかのツールを使わずにSQLPlusだけで済ませちゃう人も多いのかな?

あとは、SQLのバッチ処理をする時には当然、SQLPlusとかで一連のテストしたりする。

で、業務上の必要性を感じて、OracleMaster Bronzeのテキストを買って読み進めてみたら、意外と知らない事だらけだったw

まぁ、知らなくても割とやってけるけどw

/nolog オプション

/nolog オプションでDB接続せずにSQLPlusの起動が出来る。


sqlplus /nolog

と入力してEnter。

ぶっちゃけ、使い道が思い浮かばないんだけど、接続部分からバッチファイルでやる時に使うみたい。

「Connect」で接続して、SQLを実行して「Exit」で終了するやつ。

「@batfile.sql」って感じで頭に@をつけるとバッチファイルを実行できる。

HOSTコマンド

これは、見てもらったほうが早いからスクショを貼る。

まず、/nologオプションでsqlplusの起動。

次に、Windowsでお馴染みの一覧コマンド「dir」を実行。
※Linuxとかだと「ls」ですね

当然ながら、SQLPlus上では、OS依存のコマンドは使えない。

SQLで「dir」なんてコマンドは存在しないし。

次に、


HOST DIR

っていう風にHOSTコマンドを使うと、「dir」が使えた。

まぁ、コレもどういう時に使うかっていうと、バッチファイルを実行したい時かな。

ファイル名とかファイル場所っていうのは、固定にしたりするんだろうけど、とりあえずテストもかねて実行したい時なんかは、フォルダ内の構成なんか整理されてなかったりするので。

そういう時に、実行フォルダの移動とか、ファイル名の確認とか出来ると便利に使えそう。

後は、何気なくSpoolコマンドを使ったはいいものの、どこにログが出力されたか分からなくなる・・・何てこともなさそう。

まとめ

今までなんとなくORACLEを使ってきたけど、これからはもう少しちゃんと理解する方向で勉強しなきゃいけない。

最低限として、Bronzeでいいから取らないと、今季が対象のボーナスに響くしw

勉強も兼ねて、ちょいちょいまとめていこう。







-ORACLE
-


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

ORACLEのMERGE INTOで、UPDATEは出来るのに、INSERTできない

最近、Oracleのエラーの話しか書いてない気がするw     便利というか、トランザクション内の処理も1つで済むので、MERGE INTO文を使うことがあります。 実際、 新規デ …

partition by を使って、ORACLEで、グループ毎に1行だけ取得する。

グループ単位で一番小さいとか、一番大きいとかだけなら、MinやMaxを使って外部結合で対応できるんだけど、1番目2番目3番目を1列で取得しなきゃいけない状態になったので、調べて解決。 「partiti …

Oracleで複数レコードを更新する方法

UPDATE文で、複数のレコードを一回のトランザクション内で更新する必要に迫られました。 基本的に、今まで使ってきたUPDATE文では、 UPDATE tableA set COL1 = 1 ,COL …

SQL文中で全角文字を使うなと言われたので、ORACLEでJOIN句の条件式をCASE文で分岐させる

JOINの条件式にCase文を入れる http://blog.goo.ne.jp/ilikehobby/e/80b471f96f6d693b6c5df75f18591c0e SQL文中で全角文字を使う …

SQLのJOINの種類を理解する

これは分かりやすい。 https://blog.codinghorror.com/a-visual-explanation-of-sql-joins/ INNNER JOIN FULL OUTER J …


カテゴリー