一个应用需要使用局域网某部主机提供的数据.由于安全考虑.这个主机只开放了一个共享地址,并给了有权访问的用户名和密码.数据为ACCESS文件.

而我们的应用需要每天定时去访问这个文件.来同步数据.

环境:

1.共享文件形式,提供访问的用户名和密码;

2.文件格式为Access文件;

3.数据需要定时访问,与更新;

4.数据最终存储目标地址为SQLServer数据库

最初:

我们想通过SqlServer DTS包定时执行来导入数据.但不管怎么调试.SQLServer在执行的时报错.报错提示为权限不足.经过分析,SqlServer DTS

导入对于网络共享目录的支持不太好,再深入发现也跟共享目录给的权限有一定关系.这个问题困绕了我们很长时间。在网络上找了很多资料都没解决。

改变方案:

写一个单独导入的程序,在导入之前通过批处理脚本去将文件复制到本地,然后再去导入,然后定出以下几个步骤

1.启用批处理脚本程度

2.复制文件到本地目录

3.调用专门导数据的Exe可执行程序

4.导入成功

经过几步就可实现一次数据导入。可以走通。

接着将这个两个文件部署到服务器中.用windows计划任务来定时执行这个批处理.

部署后倍感开心。总算能实现完整导入。

第二天来公司。打开服务器一看windows计划任务成功执行。然后查询数据库数据。竟然没有导入。空空如也。

是什么问题?然后再手工执行了计划任务,发现一闪而过。也没有错误提示.数据库没有数据.说明导入数据程序没有执行到。

再打开计划任务高级设置。发现一个地方 “起始于” 参数设置然后输入bat的目录地址,再次运行计划任务。成功!

(这里注意:在bat调用其它Exe的时候一定要指定批处理文件的起启位置。否则调不到Exe)

到这里这个导入程序可以实现自动更新了。然而好景不长。由于网络主从切换,程序运行服务器要重新启动。发现重新启动后网络共享地址就没权访问。

需要再次输入用户名和密码,如果网络环境略发生变化就会失败.就不太稳定了.

升级方案

1.启用批处理脚本程度

2.创建一个网络驱动器

3.复制网络驱动器文件到本地目录

4.调用专门导数据的Exe可执行程序

5.删除网络驱动器

6.导入成功

升级方案后加入网络驱动器会指定访问的密码和用户名.不管机器是否为第一次访问都可以连接.(你懂的)

在创建网络驱动器时注意:

/user:机器名/用户名

机器名为远程共享文件的机器名.用户名为远程共享文件的机器用户名

例如:net use M: \\192.168.1.2\TEST "123456" /user:fileserver\administrator

\\192.168.1.2\TEST为共享目录的地址

123456为密码

fileserver 为共享服务器名称

administrator 为共享服务器登陆用户名

脚本如下:

@ECHO OFF
@REM 以下三个变量配置,注意CHT_PATH等号后不能有空格

net use M: \\192.168.1.150\TEST1 "123456" /user:fileserver\administrator
net use N: \\192.168.1.150\TEST2 "123456" /user:fileserver\administrator

@SET CHT_PATH="M:\FUELSCAN.MDB"
@SET HIT_PATH="N:\FUELSCAN.MDB"
@SET SQL_CONN="Server=192.168.1.2;initial catalog=TEST_DB;uid=sa;pwd=sa123;"

@TITLE 作业导数
@ECHO 导入目标机器 %SQL_CONN%
@ECHO CHT文件来源 %CHT_PATH%
@ECHO HIT文件来源 %HIT_PATH%
@ECHO 当前时间:
@DATE /T
@TIME /T

@ECHO 开始复制文件...%CHT_PATH%
@COPY %CHT_PATH% "CHT_HIT\CHT_TEMP.mdb"
@ECHO 开始复制文件...%HIT_PATH%
@COPY %HIT_PATH% "CHT_HIT\HIT_TEMP.mdb"

@ECHO 开始导入数据...
@ECHO 正在导入中...
@CALL SnphkHIT_CHT_Task.exe %SQL_CONN%

net use M: /del
net use N: /del

@ECHO 导入完成

转载于:https://www.cnblogs.com/hznet/archive/2011/06/21/2086117.html

访问有用户名和密码的网络共享,实现数据导入相关推荐

  1. 装机大师无法发现linux硬盘,Win10 u大师装机版系统无法访问老的NAS或linux网络共享怎么办...

    最近有win10云骑士专业版系统用户到本站反映说,他发现无法访问老的NAS或linux网络共享,这是怎么回事呢,这是因为比较老的NAS设备或者一些Linux易捷专业版系统的SAMBA软件包可能都是使用 ...

  2. Linux下wget怎么样从FTP获取资源(有用户名和密码)

    Linux下wget怎么样从FTP获取链接 1.linux有网络的前提下,安装wget 命令:yum install wget 2.在linux命令行下输入 wget ftp://192.168.1. ...

  3. memcache连接是否有用户名和密码的设置

    研究了下阿里云的,只有登录的用户名密码,连接时并没有.只有IP和端口号. 你娘了一下: memcache客户端连接需要知道IP和端口,linux可以很简单的限制连接的IP.为了加快数据交换速度,mem ...

  4. nas存储服务器 文件夹加密,NAS网络存储服务器储备数据的安全性怎么样?

    原标题:NAS网络存储服务器储备数据的安全性怎么样? 如果你有数据集中存储与备份的需求,那么你肯定需要NAS网络存储服务器.NAS网络存储服务器是通过网络来进行数据读取访问的,这种数据传输方式在现在发 ...

  5. windows7挂载nfs共享目录有用户名密码

    windows7挂载nfs共享目录有用户名密码) 打开控制面板-选择程序 选择-启用或关闭windows功能 勾选 NFS 服务(和 UNIX -然后确定,这个不开好像也可以) 打开CMD输入moun ...

  6. 从网络访问此计算机guest密码,Windows XP网络共享访问总是弹出输入Guest密码对话框的解决...

    为什么访问Windows XP的机器,默认会弹出一个灰色的用户名为Guest,的对话框,不管输入什么密码都无法访问?这个问题,我感觉应该看看这篇KB(http://support.microsoft. ...

  7. win10出现一个mysql账户密码错误_Windows 10 访问网络共享 总是提示用户名或密码不正确的解决方法...

    今天同事在Windows10上共享了一些文件,其他使用Windows 7的同事都可以正常使用,唯独我是使用Windows 10操作系统的,和别人输入一样的用户名和密码,却总是告诉我:用户名或密码不正确 ...

  8. win10网络邻居看到linux,在Deepin 20系统中网络共享Windows无法访问的另类解决方法...

    本文在Deepin 20系统中实现网络共享Windows,但无法访问,以下是另类的解决方法之一. 系统环境 共享主机:Deepin 20. 访问共享:Windows7\10家庭版或专业版. 配置和出现 ...

  9. 计算机网络共享后如何设置不输出密码,取消电脑网络共享安全账号密码直接进入的设置方法...

    我们在使用电脑的使用中很多的额时候都是需要设置到我们的win7系统中的网络的,那很多的小伙伴在网络张和其他的小伙伴共享文件的时候都是通过这样的设置网络共享来实现的,有小伙伴在使用长遇到每次进入共享的都 ...

最新文章

  1. Pycharm上传Gitlab
  2. Zookeeper常用命令使用
  3. Dalvik解释器源码到VMP分析
  4. ThreadLocal的非数据安全用法
  5. 基于websocket的聊天实现逻辑(springboot)
  6. 西媒盘点:历史不该遗忘的七位女数学家
  7. 前端基础牢记的一些操作-Github仓库管理
  8. SQL查询语句精华总结
  9. 产品需求文档、需求结构图、数据字典、全局说明、用例描述、需求描述、逻辑流程、原型设计、页面交互、登录注册、词汇表、数据统计、用户表设计、接口需求、功能清单、业务流程图、Axure原型、prd、文档实例
  10. 二、Swift网络请求回来的数据我这样取
  11. android源码编译出错的原因
  12. C#基础18:内置委托类型Action和Func
  13. git status命令
  14. C++中的模板template typename T
  15. 杂项-公司:Apple
  16. java js css 压缩工具_JS/CSS压缩工具(YUI Compressor)使用方法
  17. HDU 4544 湫湫系列故事——消灭兔子 (贪心+优先队列)
  18. 点阵字体显示系列之二:汉字显示
  19. idea中类和方法创建文档注释
  20. Redis List命令大全

热门文章

  1. 使用Myeclipse实现快速调试
  2. UART, SPI, IIC的详解及三者的区别和联系
  3. 类与类之间的交互关系
  4. 《编码:隐匿在计算机软硬件背后的语言(美)》读书笔记三
  5. 前端三十四:内嵌框架
  6. 使用Ubuntu笔记
  7. 关于layui-layer独立组件--弹出层
  8. regexpal 正则表达式实时调试工具
  9. Windows Phone APP中禁用截图
  10. java笔记之字符串,gc