以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 如何让程序在DOS下自动执行 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=108857) |
-- 作者:zhutangxin -- 发布时间:2017/10/31 0:07:00 -- 如何让程序在DOS下自动执行 写了一个将Access数据同步至sql server的程序,希望它能在Windows计划任务下运行,运行结束后自动关闭。要实现这个功能,需要跳过下面的登录窗口。 另外,这个程序需要先设置源数据库,目标数据库,表和字段对应关系,然后才能用来同步数据。 |
-- 作者:zhutangxin -- 发布时间:2017/10/31 0:12:00 -- 第三步同步所有的表 “同步所有表”的代码如下: Dim cmd As new SQLCommand Dim sourcetbs As new List (of String) Dim targettbs As new List (of String) \'Vars.Add("_logFileName",Gettype(String))\'变量: Log名称 Vars("_logFileName") = "log" + CSTR(Format(Date.Now, "yyyyMMddHHmmss")) + ".txt" targettbs = Connections("dbTarget").GetTableNames() sourcetbs = Connections("dbSource").GetTableNames() sourcetbs.AddRange(Connections("dbSource").GetViewNames()) cmd.C cmd.CommandText = "SELECT DISTINCT TableName1 AS sourceTable, TableName2 AS targetTable F R OM dbo.CfgDataMapping" Dim dt As DataTable = cmd.ExecuteReader() Dim dr As DataRow For i As Integer = 0 To dt.DataRows.Count -1 dr = dt.DataRows(i) If sourcetbs.Contains(dr("sourceTable")) = True AndAlso targettbs.Contains(dr("targetTable")) = True Then foxSqlBulkcopy(dr("targetTable")) End If Next 问题: 1. 是否可以把设前面三步设置与Dos下自动运行放在一个程序里,如在Dos下加一个参数,让它只执行保存好的参数设置,而不进入前面的参数设置界面? 2. 如果可以在Dos下执行,如何跳过第一个图中的“用户登录”窗口,直接运行同步代码。 |
-- 作者:有点甜 -- 发布时间:2017/10/31 8:49:00 -- 1、登陆窗口
http://www.foxtable.com/webhelp/scr/1796.htm
2、配置数据源、字段映射的数据,你可以配置在一个或者多个文件里,读取txt或者xml的文件
3、执行程序的时候,你可以控制窗口不显示,执行完以后关闭程序 |
-- 作者:zhutangxin -- 发布时间:2017/10/31 10:29:00 -- 谢谢! |