2016-04-13 30 views
0

現在、Oracle SQL Developerを使用してSQLクエリを実行し、標準クエリ(毎回同じSELECT)で貼り付けてから、csvファイルにエクスポートします。私は、バッチファイルを介してクエリを実行し、指定されたフォルダに出力を配置したいと思います。私はすでにこのマシン上で多くのバッチファイルを使用しており、このクエリーをルーチンの一部にしたいと考えています。.batを使用してODBC経由でSQLに接続

私のマシンには「WHPROD」への既存のODBC接続がありますが、使用方法はわかりません。バッチファイルからWHPRODに接続する方法はありますか?

+0

SQLCMDをご覧ください。 – RGuggisberg

答えて

0

VBスクリプトでそれを行うには簡単で、あなたがバッチスクリプトからあなたのVBScriptを呼び出すことができるので、結果は正確に何をしたいだろうがovercomplicated

を介さずに直接、バッチスクリプトではほとんど不可能です。ここで

は、Oracleに接続し、VBSからSELECTの結果を取得する方法の例です:(source

Dim strCon 

strCon = “Driver={Microsoft ODBC for Oracle}; ” & _ 
     “CONNECTSTRING=(DESCRIPTION=” & _ 
     “(ADDRESS=(PROTOCOL=TCP)” & _ 
     “(HOST=Server_Name)(PORT=1521))” & _ 
     “(CONNECT_DATA=(SERVICE_NAME=DB_Name))); uid=system;pwd=system;” 

Dim oCon: Set oCon = WScript.CreateObject(“ADODB.Connection”) 
Dim oRs: Set oRs = WScript.CreateObject(“ADODB.Recordset”) 
oCon.Open strCon 

Set oRs = oCon.Execute(“SELECT name from v$database”) 

While Not oRs.EOF 
    WScript.Echo oRs.Fields(0).Value 
    oRs.MoveNext 
Wend 
oCon.Close 

Set oRs = Nothing 
Set oCon = Nothing 

そしてここでは、バッチスクリプトからあなたのVBSを呼び出す方法は次のとおりです。

@echo off 

start "C:\\yourbatchfolder\\yourscript.vbs" 
0

I wrote an in-depth batch scriptこれはMSSQLデータベースを構築します。そのスクリプトには、あなたが手伝ってくれる大きなヒントがたくさんあります。

スクリプトは特にODBCを使用していませんが、ODBC定義の接続を使用するようにSQLCMDの引数を変更できると思いますか?それはあなたのために働くかもしれません。 MSSQLサーバーだけではありません。

関連する問題