VBScript : ADO と OO4O による PL/SQL 呼び出し( 入力引数のみ )

  単純な3種類の呼び出し方法



関連する記事

PL/SQL : プロシージャの呼び出し : CSV_OUT のソースコード


  
' ***********************************************************
' ADO / ODBC / {Microsoft ODBC for Oracle}
' ***********************************************************
strDriver = "{Microsoft ODBC for Oracle}"
strTarget = "night/xe"
strUser = "LB"
strPass = "LB"

' ***********************************************************
' ADO + FileSystemObject
' ***********************************************************
Set Cn = CreateObject( "ADODB.Connection" )
Set Rs = CreateObject( "ADODB.Recordset" )

' **********************************************************
' 接続文字列
' **********************************************************
ConnectionString = _
	"Provider=MSDASQL;" & _
	"Driver=" & strDriver & ";" & _
	"SERVER=" & strTarget & ";" & _
	"UID=" & strUser & ";" & _
	"PWD=" & strPass & ";"

' **********************************************************
' 接続
' クライアントカーソル(3)を使う事が推奨されます
' **********************************************************
Cn.CursorLocation = 3
on error resume next
Cn.Open ConnectionString
if Err.Number <> 0 then
	WScript.Echo Err.Description
	Wscript.Quit
end if
on error goto 0

' CALL CSV_OUT('0006','0007')
' begin CSV_OUT('0001','0007'); end;

PLSQL = "DECLARE"
PLSQL = PLSQL & " WK_FROM VARCHAR2(4) := '0005';"
PLSQL = PLSQL & " WK_TO VARCHAR2(4) := '0015';"
PLSQL = PLSQL & " BEGIN"
PLSQL = PLSQL & " 	CSV_OUT(WK_FROM,WK_TO);"
PLSQL = PLSQL & " END;"
	
Cn.Execute(PLSQL)


' **********************************************************
' 接続解除
' **********************************************************
Cn.Close

MsgBox("処理が終了しました")
  



  OO4O による呼び出し




Oracle ドキュメント

ExecuteSQLとCreateSQLを使用したPL/SQLブロックの実行

  
' ***********************************************************
' OO4O
' ***********************************************************
Set OO4OSession = CreateObject("OracleInProcServer.XOraSession")

' ***********************************************************
' 定数
' ***********************************************************
Const ORAPARM_INPUT = 1
Const ORAPARM_OUTPUT = 2
Const ORAPARM_BOTH = 3
Const ORATYPE_VARCHAR2 = 1
Const ORATYPE_NUMBER = 2

' 0 : Visual Basicモード(デフォルト
Set Cn = OO4OSession.OpenDatabase("night/xe", "LB/LB", 0)

' パラメータセット
Cn.Parameters.Add "CODE_START", "0001", ORAPARM_INPUT
Cn.Parameters("CODE_START").ServerType = ORATYPE_VARCHAR2

' パラメータセット
Cn.Parameters.Add "CODE_END", "0010", ORAPARM_INPUT
Cn.Parameters("CODE_START").ServerType = ORATYPE_VARCHAR2

' 実行
Cn.ExecuteSQL("BEGIN CSV_OUT(:CODE_START,:CODE_END); END;")

' ***********************************************************
' OO4O で接続解除は必要ありません
' ※ Cn.Close は何も実行しません
' ***********************************************************

MsgBox("処理が終了しました")
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ