VBScript

  ADO + Excel ( バッチ )



  
' **********************************************************
' オブジェクト作成
' **********************************************************
Set Cn = CreateObject( "ADODB.Connection" )
Set Rs = CreateObject( "ADODB.Recordset" )
Set Fs = CreateObject( "Scripting.FileSystemObject" )

' **********************************************************
' ターゲット Excel
' **********************************************************
Target = "C:\TEMP\社員マスタ.xls"

' **********************************************************
' 接続文字列
' **********************************************************
ConnectionString = _
	"Provider=Microsoft.Jet.OLEDB.4.0;" & _
	"Data Source=" & Target & ";" & _
	"Extended Properties=""Excel 8.0;"""

' **********************************************************
' 接続
' **********************************************************
on error resume next
Cn.Open ConnectionString
if Err.Number <> 0 then
	Wscript.Echo Err.Description
	Wscript.Quit
end if
on error goto 0

' **********************************************************
' レコードセット取得
' **********************************************************
Query = "select * from [社員マスタ]"
on error resume next
Rs.Open Query, Cn
if Err.Number <> 0 then
	Cn.Close
	Wscript.Echo Err.Description
	Wscript.Quit
end if
on error goto 0

' **********************************************************
' 出力ファイルオープン
' **********************************************************
Set Csv = Fs.CreateTextFile( "社員マスタ.csv", True )

' **********************************************************
' タイトル出力
' **********************************************************
Buffer = ""
For i = 0 to Rs.Fields.Count - 1
	if Buffer <> "" then
		Buffer = Buffer & ","
	end if
	Buffer = Buffer & Rs.Fields(i).Name
Next
Csv.WriteLine Buffer

' **********************************************************
' データ出力
' **********************************************************
Do While not Rs.EOF
	Buffer = ""
	For i = 0 to Rs.Fields.Count - 1
		if Buffer <> "" then
			Buffer = Buffer & ","
		end if
		Buffer = Buffer & Rs.Fields(i).Value
	Next
	Csv.WriteLine Buffer
	Rs.MoveNext
Loop

' **********************************************************
' ファイルクローズ
' **********************************************************
Csv.Close

' **********************************************************
' レコードセットクローズ
' **********************************************************
Rs.Close

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

' **********************************************************
' オブジェクト解放
' **********************************************************
Set Fs = Nothing
Set Rs = Nothing
Set Cn = Nothing
  



  Lbox.Database + Excel ( バッチ )



  
' **********************************************************
' オブジェクト作成
' **********************************************************
Set Database = CreateObject( "Lbox.Database" )
Set Fs = CreateObject( "Scripting.FileSystemObject" )

' **********************************************************
' ターゲット Excel
' **********************************************************
Target = "C:\TEMP\社員マスタ.xls"

' **********************************************************
' 接続
' **********************************************************
Result = Database.Connect( 0, Target ) 
if Result <> "" then
	Wscript.Echo Result
	Wscript.Quit
end if

' **********************************************************
' レコードセット取得
' **********************************************************
Query = "select * from [社員マスタ]"
bRet = Database.Query( Query )
if not bRet then
	Wscript.Echo "SQLのエラーかまたは対象データが存在しません"
	Wscript.Quit
end if

' **********************************************************
' 出力ファイルオープン
' **********************************************************
Set Csv = Fs.CreateTextFile( "社員マスタ.csv", True )

' **********************************************************
' タイトル出力
' **********************************************************
Buffer = ""
For i = 0 to Database.FieldCount - 1
	if Buffer <> "" then
		Buffer = Buffer & ","
	end if
	Buffer = Buffer & Database.GetName(i)
Next
Csv.WriteLine Buffer

' **********************************************************
' データ出力
' **********************************************************
Do While bRet
	Buffer = ""
	For i = 0 to Database.FieldCount - 1
		if Buffer <> "" then
			Buffer = Buffer & ","
		end if
		Buffer = Buffer & Database.GetText(i)
	Next
	Csv.WriteLine Buffer
	bRet = Database.Query()
Loop

' **********************************************************
' ファイルクローズ
' **********************************************************
Csv.Close

' **********************************************************
' 接続解除
' **********************************************************
Database.DisConnect

' **********************************************************
' オブジェクト解放
' **********************************************************
Set Fs = Nothing
Set Database = Nothing
  



  OO4O ( バッチ )

  
' **********************************************************
' オブジェクト作成
' **********************************************************
Set OraSession = CreateObject( "OracleInProcServer.XOraSession" )
Set Fs = CreateObject( "Scripting.FileSystemObject" )

' **********************************************************
' 接続
' **********************************************************
on error resume next
OraSession.CreateDatabasePool 1,40,200,"lightbox", "lightbox/lightbox", 0
if Err.Number <> 0 then
	Wscript.Echo OraSession.LastServerErrText
	Wscript.Quit
end if
on error goto 0
Set OraDatabase	= OraSession.GetDatabaseFromPool(10)
OraDatabase.LastServerErrReset

' **********************************************************
' レコードセット取得
' **********************************************************
Query = "select * from 社員マスタ"
on error resume next
Set OraDynaset = OraDatabase.CreateDynaset(Query,2)
if Err.Number <> 0 then
	Wscript.Echo OraDatabase.LastServerErrText
	Wscript.Quit
end if
on error goto 0

' **********************************************************
' 出力ファイルオープン
' **********************************************************
Set Csv = Fs.CreateTextFile( "社員マスタ.csv", True )

' **********************************************************
' タイトル出力
' **********************************************************
Buffer = ""
For i = 0 to OraDynaset.Fields.Count - 1
	if Buffer <> "" then
		Buffer = Buffer & ","
	end if
	Buffer = Buffer & OraDynaset.Fields(i).Name
Next
Csv.WriteLine Buffer

' **********************************************************
' データ出力
' **********************************************************
Do While not OraDynaset.EOF
	Buffer = ""
	For i = 0 to OraDynaset.Fields.Count - 1
		if Buffer <> "" then
			Buffer = Buffer & ","
		end if
		Buffer = Buffer & OraDynaset.Fields(i).Value
	Next
	Csv.WriteLine Buffer
	OraDynaset.MoveNext
Loop

' **********************************************************
' ファイルクローズ
' **********************************************************
Csv.Close

' **********************************************************
' オブジェクト解放
' **********************************************************
Set Fs = Nothing
Set OraDynaset = Nothing
Set OraDatabase = Nothing
Set OraSession = Nothing
  










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





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

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ