• 締切済み

SQL Plus ワークシートをWSH活用にて起動する方法

Oracle10gをインストールすると、 C:\oracle\product\10.2.0\client_1\BIN\oemapp.bat というファイルがあるようですが、これにコマンドライン引数をつけて C:\oracle\product\10.2.0\client_1\BIN\oemapp.bat worksheet とすると、SQL Plus ワークシートを起動できるようです。 しかしながら、***.bat というものはWSHに置き換えて作成できると いうことを以前から知っているので、何とかして作り変えてみようと しておりますが、今一度うまくいかないです。 基本的にはbatファイルに書かれているものを忠実に "%ComSpec% /c ~" というものを使って書き換えてみようとしております。 なおかつこれがうまくいったところで "sqlplus.exe scot/tiger@server" といった起動方法をWSHへ書き換えたoemapp.batに適用したいなと 思っております。 いい方法がないものでしょうか。 皆様のお知恵を拝借したいと思います。

みんなの回答

  • iriyak
  • ベストアンサー率48% (40/82)
回答No.1

こんにちは。 >基本的にはbatファイルに書かれているものを忠実に >"%ComSpec% /c ~" >というものを使って書き換えてみよう ここを実際に Windows Script Host に書き換えたプログラム(もしくはプログラムの断片、書き出し)の提供は可能ですか?? それによって、後どうすればよいか、回答者はサジェッションできるかもしれません。

関連するQ&A

  • 10g Client環境でのSQL Plusについて

    Win2003Serverに 10gのClientをインストールしました。 SQLPlusを起動しようと、スタートメニューから辿っていっても SQLPlusのショートカットが存在しません。 [スタート]-[Oracle - OraClient10g_home1]-[アプリケーション開発] の下に存在するはずだと思うのですが、何か設定があるのでしょうか? 宜しくお願いします。

  • Oracleインストール後のSQL/PLUSの実行について

    初めてLinuxのOracleのインストールをしています。 Oracle11gをインストールし11GのWEBの管理画面・クライアントからの SQLPLUSの接続は問題なくできているのですが サーバ自身でSQL/PLUSを実行すると下記のようなエラーとなってしまします。 [oracle@svr01 bin]$ sqlplus /nolog bash: sqlplus: command not found 掲示板等で調べてみますとパスが通っていないのが原因とありました。 下記のようになっておりますが、どこの記述に不具合があるのか分かりません。 また、別のファイルにも何か設定が必要でしょうか? ご存知の方教えてください。 よろしくお願いします。 ------------------------- # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATH # added by oranavi export ORACLE_BASE=/opt/app/oracle export ORACLE_HOME=/opt/app/oracle/product/11.1.0/db_1 export ORACLE_SID=svr01 export NLS_LANG=Japanese_Japan.JA16EUC export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data export PATH=$PATH:$ORACLE_HOME/bin export ORACLE_DOC=$ORACLE_HOME/doc CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/JRE CLASSPATH=$CLASSPATH:$ORACLE_HOME/jlib CLASSPATH=$CLASSPATH:$ORACLE_HOME/rdbms/jlib CLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/classes12.jar CLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/nls_charset12.jar export CLASSPATH LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/jdbc/lib LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib export LD_LIBRARY_PATH --- MiracleLinux V5 Oracle11g 11.1.0.6

  • Oracle 10gでORA-12154:TNS:could not...

    Oracle 10gのクライアント-サーバー環境でSQL*Plusなどから ローカルネーミングで接続しようとするとORA-12154:TNS:could not resolve the connect identifier specifiedが出て接続できません。 サーバー(ホスト名;aspire) VistaHomePremiumSP1 Oracle10gDatabase クライアント XPHomeEditionSP3 Oracle10gClient tnsnames.oraの内容 # tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\client_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. ORCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = aspire)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) oracle.keyの内容 SOFTWARE\ORACLE\KEY_OraClient10g_home1 レジストリの内容 [HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10g_home1] "ORACLE_HOME"="C:\\oracle\\product\\10.2.0\\client_1" "ORACLE_HOME_NAME"="OraClient10g_home1" "ORACLE_GROUP_NAME"="Oracle - OraClient10g_home1" "ORACLE_BUNDLE_NAME"="Enterprise" "NLS_LANG"="JAPANESE_JAPAN.JA16SJIS" "StatementCacheSize"="0" "OLEDB"="C:\\oracle\\product\\10.2.0\\client_1\\oledb\\mesg" "StmtCacheSize"="0" "SQLPATH"="C:\\oracle\\product\\10.2.0\\client_1\\dbs" "OO4O"="C:\\oracle\\product\\10.2.0\\client_1\\oo4o\\mesg" "ORACLE_HOME_KEY"="SOFTWARE\\ORACLE\\KEY_OraClient10g_home1" "MSHELP_TOOLS"="C:\\oracle\\product\\10.2.0\\client_1\\MSHELP" なお、簡易接続ネーミングでは成功します。 sqlplus scott/tiger@aspire/orcl また、環境変数ORACLE_HOMEを設定すると成功します。 set ORACLE_HOME=C:\oracle\product\10.2.0\client_1 sqlplus scott/tiger@orcl 諸先輩方のアドバイスをお願いいたします。

  • Oracle10gclientで接続不能

    ローカルマシンにOracle10gclientをインストールし SQLPLUSにてサーバーのDB環境へ接続を試みたところ、以下のメッセージが表記され 接続が不可となります。 「ORA-12154: TNS:could not resolve the connect identifier specified」 Enter user-name : ちなみに、Net Configuration Assistantでは、接続可能となります。 バージョンは10.2.0.1です。 Cドライブにインストールしておりますが、 パスは以下となっています。 C:\oracle\product\10.2.0\client_1 C:\oracle\product\10.2.0\client_2 C:\oracle\product\10.2.0\client_2\NETWORK\ADMIN\の配下に 以下のファイルが存在しています。 listener.ora sqlnet.ora tnsnames.ora サイトでも調べているのですが、なかなか解決に至っておりません。 上記内容で何か考えられる原因等ございましたら アドバイスいただけると幸いです。 以上、よろしくお願い申し上げます。

  • WSHで、EXCELにワークシートをCSVから読み込んで追加したい。

    WSHを使って、EXCELを起動して、既存のCSVファイルからデータを読み込みたいのですが、複数のCSVから読み込むなどして、同じワークブックの新しいシートにCSVから読み込んだデータを追加していきたいのですが、どうやればよいのかわかりません。 下のソースのようにしたのですが、そうすると、別のワークブックとして開いてしまうので、わからなくなってしまいました。お願いします。 set Exl=CreateObject("Excel.Application") Exl.Visible=True Exl.workbooks.add Exl.workbooks.OpenText "c:\data.csv"

  • 起動時に勝手にWSHが起動する

    つい先日ウイルスに感染し、ノートンパワーイレイサーで感染したであろうファイルをすべて消去したところ、スクリプトファイルを消去したは良いものの、起動時にWSHがvbsを実行する設定が残ってしまったらしく、起動するたびも画像のような消去したスクリプトファイルを実行しようとするダイアログが出てきます。 完璧に検索したわけではありませんが、いくら検索しても解決法が見当たらなかったため質問させてもらいました。 どなたか解決法をご存知の方、教えていただけると幸いです。 エラーコード Windows Script Host スクリプトファイル"C:\Users\Public\Libraries\Checks.vbs"が見つかりません。

  • Oracle10.2インストール後、インストールOSのユーザでない他のユーザからSQLPLUSを使うには?

    Oracle10.2をRed hat Linux ES4にインストールしました。 インストール後、環境変数(NLS_LANG、ORACLE_HOME等)を 設定し、SQLPLUSを実行しました。 インストールしたOSのユーザ(oracle)でない 他のOSユーザから(user1)からSQLPLUSを実行をしようとすると 実行ができません。この問題は、実行ファイル等に 読み取り、実行権限(rx)ないということまでわかりました。 インストールしたユーザのグループに追加してもSQLPLUSを 使うことはできませんでした。 通常、インストールしたユーザ以外のユーザからSQLPLUS (exp、imp等 $ORACLE_HOME/binにある実行ファイル)を 使うにはどのように設定すればよいのでしょうか??

  • Oracle Developer Tools for Visual Studio .NET with ODAC10.2.0.2.21のインストールエラー

    Oracle Developer Tools for Visual Studio .NET with ODAC10.2.0.2.21を OTNのダウンロードサイトより、ダウンロードし、インストールを行ったところ、 約96%終了時点で、エラーが発生してしまい、正常にインストールが行えないのです。 インストールは、Windows2003 Server R2に対し行っています。 インストールログの内容を見たところ、以下のようになっていました。 ちなみに、gacutil.exeは、対象のマシンには見つかりませんでした。 ------------------------------------------------------------------------------------- 【ログの抜粋】 情報: 08/11/21 21:44:33 JST: インストールを開始します。インストール・フェーズ2コンポーネントOracle Data Provider for .NET 2.0 情報: 呼出し中:アクション:SpawnActions10.1.0.2.0 Spawn installcommand = C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\\bin\gacutil.exe /I C:\oracle\product\10.2.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll deinstallcommand = C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\\bin\gacutil.exe /u Oracle.DataAccess,Version=2.102.2.20 WaitForCompletion = true 情報: Exception occured during spawning :CreateProcess: C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\\bin\gacutil.exe /I C:\oracle\product\10.2.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll error=2 情報: アクションからスローされた例外: Spawn 例外名: RuntimeException 例外文字列: 実行時にエラーが発生しました。 例外の重大度: 0 情報: 例外処理はユーザーにオプションの選択を求めるように設定されています。 RETRY IGNORE ------------------------------------------------------------------------------------- 2週間ほど前に、別のサーバーに対し、インストールしたときには、 正常にインストールされたことがあり、その時のログは、以下の通りでした。 ------------------------------------------------------------------------------------- 【ログの抜粋】 情報: 08/11/06 15:46:48 JST: インストールを開始します。インストール・フェーズ2コンポーネントOracle Data Provider for .NET 2.0 情報: 呼出し中:アクション:SpawnActions10.1.0.2.0 Spawn installcommand = C:\oracle\product\10.2.0\client_1\bin\ODPReg.exe C:\oracle\product\10.2.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll deinstallcommand = C:\oracle\product\10.2.0\client_1\bin\ODPReg.exe C:\oracle\product\10.2.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll /u WaitForCompletion = null 情報: -------------------------------------------------------------------------------------  installcomandの実行ファイル違うので、それが原因と思われるのですが、  どうしたら、この違いが出るのかが、さっぱりわからないのです。 どなたか、心当たりのある方がいらっしゃったら、コメントをお願い致します。

  • SQL*Plus内でPL/SQL、SQLを実行するシェルスクリプトを書

    SQL*Plus内でPL/SQL、SQLを実行するシェルスクリプトを書いています。 イメージ sqlplus scott/tiger << EOF   declare     aaa number;   begin     -- *1     select col1 into aaa from test1;   end;   /   -- *2   define a=1   define b=1   @test.sql EOF ここで*1にて例えば複数行が返ってくるなどのエラーが 発生した場合、*2以降のSQLを実行せずにSQL*Plusから抜けたいのですが どのようにすればよいかわかりますでしょうか。 whenever sqlerror exit 255 などはPL/SQL内の論理エラーはハンドリングしてくれないようです。 よろしくお願いします。 それかdefineや@マーク指定によるsqlファイルの取り込みを PL/SQLの中で実行できる方法を教えていただく方法でも 当方が実施したいことはできるのでそれでもかまいません。

  • CentOS5.1にOracle10gR2インストール

    CentOS5.1の端末にOracle10gのリリース2のインストールを試みているのですが、エラーが出て完了できない状態です。 エラー内容は 情報: collect2: ld はステータス 1 で終了しました 情報: /bin/chmod: cannot access `/home/oracle/oracle/product/10.2.0/db_1/precomp/lib/proc' 情報: : そのようなファイルやディレクトリはありません 情報: make: 情報: *** [/home/oracle/oracle/product/10.2.0/db_1/precomp/lib/proc] エラー 1 といった内容が最初に出てから collect2: 情報: ld はステータス 1 で終了しました 情報: make: 情報: *** [sqlplus] エラー 1 情報: 作成されたプロセスからの出力を終了します。 情報: ---------------------------------- 情報: アクションからスローされた例外: make 例外名: MakefileException 例外文字列: Makeファイル'/home/oracle/oracle/product/10.2.0/db_1/sqlplus/lib/ins_sqlplus.mk'のターゲット'install'を起動中のエラーです。詳細は'/home/oracl e/oraInventory/logs/installActions2008-05-09_05-24-39PM.log'を参照してください。 例外の重大度: 1 情報: 呼出し中:アクション:unixActions10.2.0.1.0 make registerOnly = false installMakePath = /usr/bin/make installMakeFileName = /home/oracle/oracle/product/10.2.0/db_1/rdbms/lib/ins_rdbms.mk installTarget = irman undoMakeFileName = installArguments = ORACLE_HOME=/home/oracle/oracle/product/10.2.0/db_1, logFile = /home/oracle/oracle/product/10.2.0/db_1/install/make.log undoTarget = progMsg = Linking RMAN utility 情報: このMake操作の出力は次の場所でも参照できます: '/home/oracle/oracle/product/10.2.0/db_1/install/make.log' 情報: 情報: 作成されたプロセスから出力を開始します。 情報: ---------------------------------- と言った感じのエラーがいくつか続く状態になっています。 必須パッケージや、ユーザグループ、パラメーターの設定は10g付属のインストレーションガイドを参考に行っているのでインストール要件は満たしているとは思っているのですが… 最初のエラーのディレクトリが作成されていないのが悪いとは思うのですが、その原因がネット等利用して自分なりに調べたのですがどうしても解決できず、作業が進まず困っているので何かアドバイス等いただけないでしょうか?

専門家に質問してみよう