Help us understand the problem. What is going on with this article?

Oracleに対話形式でさくっと接続するbatプログラム

More than 3 years have passed since last update.

OracleにSQL*Plusでさくっと接続したい

Oracleに接続して何らかの作業をする際、sqldeveloperなどのGUIツールは重くて嫌いなので、基本的にSQL*Plusを利用します。ただ、開発用、検証用、ステージング用・・・・・・etc、とサーバが複数あり、さらにスキーマも複数あるせいで、TNS サービス名とアカウントの組み合わせを忘れがちだったので、対話形式で指定のOracleインスタンスにさくっと接続できるbatファイルを作成します。

Oracle接続バッチツール

batファイルを実行後、接続先を番号で指定することで、番号に紐付くスキーマとインスタンスに接続するプログラムです。
検証用、ステージング用といったデリケートなサーバに接続する際には、コマンドプロンプトのタイトルや背景色が目立つように変更して、ヒヤリハットを防止します。

oralce_conn_sample.bat
@echo off
echo /*****************************************************************/
echo /*  ■Oracle接続バッチ                                             */
echo /*     1)サーバ:開発         SID:db1 スキーマ:user1             */
echo /*     2)サーバ:検証         SID:db1 スキーマ:user1             */
echo /*     3)サーバ:ステージング SID:db1 スキーマ:user1             */
echo /*****************************************************************/

rem 番号を入力
echo.
set /p DB_SERVER="接続先を番号で指定してください >> "
rem 番号で指定した設定関数を実行
call :%DB_SERVER%
rem 接続関数を実行
call :CONNECT

rem 接続先の設定関数
:1
rem ユーザ名
set USER_NAME=user1 
rem パスワード
set PASSWORD=passwd1
rem TNS名
set TNS_NAME=db1.dev
rem タイトル
set TITLE_HEAD=開発環境
rem 背景色
color 1F
exit /b

:2
set USER_NAME=user1
set PASSWORD=passwd1
set TNS_NAME=db1.verify
set TITLE_HEAD=★★検証環境★★
color 5F
exit /b

:3
set USER_NAME=user1
set PASSWORD=passwd1
set TNS_NAME=db1.staging
set TITLE_HEAD=★★ステージング環境★★
color 5F
exit /b

rem 接続関数
:CONNECT
rem スクリプトを実行し易いように、SQLスクリプトファイルを配置しているディレクトリに移動
cd C:\app\sqlplus
title %TITLE_HEAD% %USER_NAME%@%TNS_NAME%
sqlplus %USER_NAME%/%PASSWORD%@%TNS_NAME%
exit /b
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした