2010年10月28日

■SQL*PLUSコピー&ペースト

SQL*PLUSで便利なコピー&ペーストの方法

select sysdate from dual;

を再度実行したい場合、
上記の「select sysdate from dual;」を選択する。
※選択:左クリックを押しながら開始から終了位置まで
カーソルをドラッグする。
選択した状態(左クリック押下した状態)で右クリックを押下。
すると新しくSQLがコピーされる。
posted by ピラクル at 20:16| Comment(0) | TrackBack(0) | SQL*PLUS

2010年10月25日

■SQL*PLUSを立ち上げた時、自動的にログインする。

SQL*PLUSのアイコンを右クリック>プロパティを開く
リンク先の項目が以下のようになっている。

C:\ORANT\bin\sqlplusw.exe

exeファイルの後にスペースを開けてログイン情報を記述する。

C:\ORANT\bin\sqlplusw.exe ユーザー/パスワード@ホスト

アイコンをクリックすると自動的に記述した環境へログインする。
※本番環境や開発環境など複数の環境がある場合は
他の環境へ入らないように注意が必要。
posted by ピラクル at 15:35| Comment(0) | TrackBack(0) | SQL*PLUS

■SQL*PLUSの画面を外部ファイル(テキスト)ファイルに保存する。

【利用方法】
・出力されたデータをSCVファイルなどに取り出す。
・実行・結果履歴を残すのに役にたつ。

SPOOL C:/**ディレクトリ**/log.txt

******************************************
実行文や出力結果がlog.txtに保存される。
出力結果だけを出力した場合などは
SETコマンドで事前に設定を行う。
******************************************

SPOOL OFF
posted by ピラクル at 14:24| Comment(0) | TrackBack(0) | SQL*PLUS

2010年10月24日

ログインしているユーザー名を取得する

前提として以下のようなユーザー名があるとする。
ユーザー名:USER01
ユーザー名:USER02
ユーザー名:USER03

SQL*PLUSで以下のユーザーに接続する。

CONN USER01/パスワード@ホスト名

ユーザー名表示スクリプト
-----------------------------
SHOW USER
-----------------------------
(結果)
NAME
-----------------------------
USER01
-----------------------------
posted by ピラクル at 21:31| Comment(0) | TrackBack(0) | チューニング

2010年10月22日

ログインしているデータベース名を取得する。

前提として以下のようなデータベース環境だとする
データベース環境名:database01
データベース環境名:database02
データベース環境名:database03

SQL*PLUSで以下の環境に接続する。

CONN ユーザー名/パスワード@database01

データベース環境表示スクリプト
-----------------------------
SELECT NAME
FROM V$DATABASE;
-----------------------------
(結果)
NAME
-----------------------------
database01
-----------------------------
posted by ピラクル at 09:36| Comment(0) | TrackBack(0) | SQLテクニック

2010年10月19日

日付け型を整形する。

SELECT SYSDATE FROM DUAL;

結果
----------
10-10-19

※DBの設定によるが
上記のように表示されるそれを

2010/10/19

のように表示させる

SELECT TO_CHAR(SYSDATE,'YYYY/MM/DD') FROM DUAL;

結果
----------
2010/10/18

となる。
posted by ピラクル at 01:31| Comment(0) | TrackBack(0) | SQL*PLUS

2010年03月02日

パッケージの確認と削除

【パッケージの確認文】

select * from user_objects
where object_type = 'PACKAGE BODY';

commit;


【パッケージの削除文】

drop package body パッケージ名;
posted by ピラクル at 10:03| Comment(0) | TrackBack(0) | SQLテクニック

2010年02月24日

指定の文字列を置換する REPLACE関数

SELECT REPLACE(
      項目名,
      '置換する文字',
      '置換後の文字'
)
FROM TABLENAME;


例)項目名KOUMOKUが「XXXYYYZZZ」だったとする。

SELECT REPLACE(KOUMOKU,'Y','*')
FROM TABLENAME;

結果:XXX***ZZZ
posted by ピラクル at 18:11| Comment(0) | TrackBack(0) | SQLテクニック

出力項目を結合する(文字列の結合) ||

出力項目を || 縦の棒二本で結合できる


SQL===========================

SELECT XXX || YYY
FROM TABLENAME ;

結果============================

XXXの文字列とYYYの文字列が結合される。
例)XXX→HELLO YYY→WELCOM
ならば
HELLOWELCOM
と出力

===============================


concat()関数を使っても同様の結合が出来る


concat(XXX,YYY)
posted by ピラクル at 17:50| Comment(0) | TrackBack(0) | SQLテクニック

2010年02月18日

DB内のテーブル名を確認する

以下のSQLで全てのDB内のテーブル名が取得できる

SELECT TABLE_NAME
FROM ALL_TABLES



現在、ログイン中のユーザーのテーブル名は「USER_TABLES」

SELECT TABLE_NAME
FROM USER_TABLES



テーブル名を指定する「WHERE」句も使用可能

SELECT TABLE_NAME
FROM ALL_TABLES
WHERE TABLE_NAME like '%検索したいテーブル名%'



「TAB」でも可!スキーマテーブル名の表示

SELCT TABLE_NAME
FROM TAB
;
posted by ピラクル at 13:00| Comment(0) | TrackBack(0) | SQLテクニック