SQLServer と Access との 連携
SQLServer上のテーブルをMDBにリンク/インポートする (テーブル指定)
接続文字列
lesson001.con
ODBC;DRIVER={SQL Server};SERVER=xxxxxx;DataBase=adventureworksdw;UID=yyyyyy;PWD=zzzzzz;
リンク/インポート用スクリプト
lesson001.vbs
'SQLServer 接続文字列 読み込み Private fs Set fs = CreateObject("Scripting.FileSystemObject") Private tsCon Set tsCon = fs.OpenTextFile(WScript.Arguments(0)) Private sCon: sCon = "" If Not tsCon.AtEndOfStream Then sCon = tsCon.ReadLine End If tsCon.Close Set tsCon = Nothing Set fs = Nothing 'MDB ファイルを 作成 Dim de Set de = CreateObject("DAO.DBEngine.36") 'Access95 DAO.DBEngine 'Access97 DAO.DBEngine.35 'Access2000 DAO.DBEngine.36 Dim dbLangJapanese: dbLangJapanese = ";LANGID=0x0411;CP=932;COUNTRY=0" Dim db Set db = de.CreateDatabase(WScript.Arguments(1), dbLangJapanese, 64) 'Access 2.0 16 'Access 95 32 'Access 2000 64 db.Close 'Access を 起動 Dim accessApp Set accessApp = CreateObject("Access.Application") accessApp.Visible = True '作成した MDB ファイルを 開く accessApp.OpenCurrentDataBase WScript.Arguments(1) Dim acTable: acTable = 0 Dim acImport: acImport = 0 Dim acLink: acLink = 2 'テーブル を インポート accessApp.DoCmd.TransferDatabase acImport, "ODBC", sCon, acTable, WScript.Arguments(2), "IMPORT_" & WScript.Arguments(2) 'テーブル を リンク accessApp.DoCmd.TransferDatabase acLink, "ODBC", sCon, acTable, WScript.Arguments(2), "LINK_" & WScript.Arguments(2) accessApp.Quit Set accessApp = Nothing