MySQL のドライバが 32 ビットのみの為、SysWOW64\cscript.exe で実行するようにしています。
<JOB>
<SCRIPT language="JScript">
// ****************************
// SysWOW64\cscript.exe を使用
// ****************************
str = WScript.FullName;
if ( str.search(/syswow/i) == -1 ) {
shell = new ActiveXObject("Shell.Application");
folder = shell.Namespace( 0x29 );
folderItem = folder.Self;
target_path = folderItem.Path;
str = WScript.ScriptFullName;
WshShell = new ActiveXObject("WScript.Shell");
WshShell.Run( "cmd.exe /c " + target_path + "\\cscript.exe \"" + str + "\" & pause", 3 );
WScript.Quit();
}
// ****************************
// オブジェクト作成
// ****************************
var cn = new ActiveXObject( "ADODB.Connection" )
// ****************************
// 接続用の文字列を準備
// ****************************
var file_path1_accdb = "C:\\Users\\sworc\\Documents\\hanbaic-set\\hanbaic.accdb";
var connection_string = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + file_path1_accdb + ";";
// ****************************
// エクスポート用の文字列を準備
// ****************************
var import_target = "[ODBC;Driver={MySQL ODBC 5.3 Unicode Driver};server=localhost;database=lightbox;uid=root;pwd=]";
var target_name = "社員マスタ";
var file_path_xlsx = "C:\\Users\\sworc\\Documents\\hanbaic-set\\new.xlsx";
var export_target = "[ODBC;Driver={SQL Server};server=localhost;database=lightbox;uid=sa;pwd=password]";
var export_query = "select * into " + export_target + "." + target_name + " from " + import_target + "." + target_name;
WScript.Echo( export_query );
// ****************************
// エクスポート
// ****************************
cn.Open( connection_string );
cn.Execute( export_query );
cn.Close();
WScript.Echo( target_name + " の MySQL から SQLServer(SQLExpress) へのエクスポート処理が終了しました" );
</SCRIPT>
</JOB>
関連する記事 System.Data.OleDb で select into 構文を使って簡単に Microsoft Access のデータを他の データベースにエクスポートする
|
|






