两个局域网的数据库表数据更新问题

qq511388601 2021-04-30 11:05:20
公司两个局域网2套系统数据库完全一样的表结构,现在需要经常从一个数据库中的几个表,导出数据来更新替换另外一个局域网中数据库中的同名表,数据量大概20万条左右,更新频率一周一次。有没有什么好办法,尽量不通过技术人员,不通过dts等方式。 我考虑可以搞一个小程序,把导出、导入过程写入,让非技术人员也可以操作。但是具体的思路没有,清大神指教。
补充一句,2个局域网互相不能联网,定期通过U盘交换数据的方式
...全文
468 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq511388601 2021-05-24
  • 打赏
  • 举报
回复
已完成,还是采用的bcp,在接收一侧的安装了数据库,搞一个客户端程序用来导入接收的数据。 但是细节还需完善 很多字段对应有问题 尤其是varchar比较大的字段 之前设计不规范很多varchar(8000)汗汗汗 结贴了 谢谢各位的执教!
qq511388601 2021-05-08
  • 打赏
  • 举报
回复
不知道这种是不是一个普遍性需求 我们的情况是有分布在不同地理位置且无法联网的多个区域,系统中有很多基础数据需要及时共享。而专业程序员没法经常性各个区域去更新,只能在当地找一些略懂一些it的人来协助。
qq511388601 2021-05-08
  • 打赏
  • 举报
回复
引用 15 楼 吉普赛的歌 的回复:
[quote=引用 14 楼 删库到跑路 的回复:]ssms可以导入导出Excel
他是给普通用户用,不是给程序员用。[/quote] 目前基本做好了一个, 是我没说清楚,做这个是给兼职管理员来用,对安全性要求也不高。 导入部分放在目的服务器上运行,或者在客户端用我测试也没问题。 兼职管理员虽然不是程序员,我给做成了winform形式 应该可以搞定。 在各位大神帮助下 我再继续优化一下 再次感谢各位
吉普赛的歌 2021-05-08
  • 打赏
  • 举报
回复
引用 18 楼 qq511388601 的回复:
不知道这种是不是一个普遍性需求 我们的情况是有分布在不同地理位置且无法联网的多个区域,系统中有很多基础数据需要及时共享。而专业程序员没法经常性各个区域去更新,只能在当地找一些略懂一些it的人来协助。
跨区域很正常,但一般会有跳板机能连接到两边。 如果有跳板机,或者能创建跳板机。 可以用跳板机来做这个事情,不需要人工这么麻烦。
删库到跑路 2021-05-07
  • 打赏
  • 举报
回复
ssms可以导入导出Excel
丁劲犇 2021-05-07
  • 打赏
  • 举报
回复
感觉这种需求应该挺多的。直接导出为sqlite,access之类的数据库,再导回去。比较困难的是各种字段格式的转换可能损失信息。
吉普赛的歌 2021-05-07
  • 打赏
  • 举报
回复
引用 14 楼 删库到跑路 的回复:
ssms可以导入导出Excel
他是给普通用户用,不是给程序员用。
唐诗三百首 2021-05-06
  • 打赏
  • 举报
回复
可以把工具分为2个程序: 程序1: 运行在源端服务器,负责在设定的时间去导出数据文件,压缩为zip,上传到共享文件夹(或FTP,云端,发邮件等). 程序2: 运行在目的端服务器,负责在设定的时间去下载文件,解压缩,导入数据库...
吉普赛的歌 2021-05-06
  • 打赏
  • 举报
回复
引用 11 楼 qq511388601 的回复:
[quote=引用 10 楼 吉普赛的歌 的回复:][quote=引用 9 楼 qq511388601 的回复:][quote=引用 6 楼 唐诗三百首 的回复:][quote=引用 4 楼 qq511388601 的回复:]
你好 有没有可视化操作的bcp类似工具,因为另一个局域网里没有专业人员操作。

bcp是个在DOS下可执行的命令, 可以封装为桌面程序(如winform)给用户使用.[/quote]
你好 我参照您的方法,使用存储过程xp_cmdshell以SQL语句的方式运行BCP语句进行数据导出时,如果xp_cmdshell运行在本地实例上,导出的文件就可以存到本地硬盘上,如果运行在其它远程服务器实例上,导出的文件就不知道哪里去了。
我想达到的目的是写一个程序,运行在客户机,客户机不安装sql server 。也能够导出文件到本地,我应该怎么搞呢[/quote]
不要用什么 xp_cmdshell 了, 直接将表导出为 EXCEL 文件。
请参考:
https://blog.csdn.net/yenange/article/details/77164587

目标机, 用 NPOI 将 EXCEL 导入到表中。
这个的文档比较多, 就不用发了,你自己搜索吧[/quote]

额 xp_cmdshell过时了么 刚研究了几天 感觉还挺好的,就差在保存路径到本地上了
您说的这个NPOI我在研究研究[/quote]

不是过时,而是要求超级管理员权限,这个安全本身就有问题了。
另外,路径也是在服务器上,客户端怎么办?
你要做软件,不可能用上这个东西。
顶多你自己用一下差不多。
qq511388601 2021-05-06
  • 打赏
  • 举报
回复
引用 10 楼 吉普赛的歌 的回复:
[quote=引用 9 楼 qq511388601 的回复:][quote=引用 6 楼 唐诗三百首 的回复:][quote=引用 4 楼 qq511388601 的回复:] 你好 有没有可视化操作的bcp类似工具,因为另一个局域网里没有专业人员操作。
bcp是个在DOS下可执行的命令, 可以封装为桌面程序(如winform)给用户使用.[/quote] 你好 我参照您的方法,使用存储过程xp_cmdshell以SQL语句的方式运行BCP语句进行数据导出时,如果xp_cmdshell运行在本地实例上,导出的文件就可以存到本地硬盘上,如果运行在其它远程服务器实例上,导出的文件就不知道哪里去了。 我想达到的目的是写一个程序,运行在客户机,客户机不安装sql server 。也能够导出文件到本地,我应该怎么搞呢[/quote] 不要用什么 xp_cmdshell 了, 直接将表导出为 EXCEL 文件。 请参考: https://blog.csdn.net/yenange/article/details/77164587 目标机, 用 NPOI 将 EXCEL 导入到表中。 这个的文档比较多, 就不用发了,你自己搜索吧[/quote] 额 xp_cmdshell过时了么 刚研究了几天 感觉还挺好的,就差在保存路径到本地上了 您说的这个NPOI我在研究研究
吉普赛的歌 2021-05-06
  • 打赏
  • 举报
回复
引用 9 楼 qq511388601 的回复:
[quote=引用 6 楼 唐诗三百首 的回复:][quote=引用 4 楼 qq511388601 的回复:] 你好 有没有可视化操作的bcp类似工具,因为另一个局域网里没有专业人员操作。
bcp是个在DOS下可执行的命令, 可以封装为桌面程序(如winform)给用户使用.[/quote] 你好 我参照您的方法,使用存储过程xp_cmdshell以SQL语句的方式运行BCP语句进行数据导出时,如果xp_cmdshell运行在本地实例上,导出的文件就可以存到本地硬盘上,如果运行在其它远程服务器实例上,导出的文件就不知道哪里去了。 我想达到的目的是写一个程序,运行在客户机,客户机不安装sql server 。也能够导出文件到本地,我应该怎么搞呢[/quote] 不要用什么 xp_cmdshell 了, 直接将表导出为 EXCEL 文件。 请参考: https://blog.csdn.net/yenange/article/details/77164587 目标机, 用 NPOI 将 EXCEL 导入到表中。 这个的文档比较多, 就不用发了,你自己搜索吧
qq511388601 2021-05-06
  • 打赏
  • 举报
回复
引用 6 楼 唐诗三百首 的回复:
[quote=引用 4 楼 qq511388601 的回复:] 你好 有没有可视化操作的bcp类似工具,因为另一个局域网里没有专业人员操作。
bcp是个在DOS下可执行的命令, 可以封装为桌面程序(如winform)给用户使用.[/quote] 你好 我参照您的方法,使用存储过程xp_cmdshell以SQL语句的方式运行BCP语句进行数据导出时,如果xp_cmdshell运行在本地实例上,导出的文件就可以存到本地硬盘上,如果运行在其它远程服务器实例上,导出的文件就不知道哪里去了。 我想达到的目的是写一个程序,运行在客户机,客户机不安装sql server 。也能够导出文件到本地,我应该怎么搞呢
xiaocaimi_1124 2021-05-02
  • 打赏
  • 举报
回复
有没有玩APP渗透的大神来拯救一下..TG @caimimi_777
唐诗三百首 2021-04-30
  • 打赏
  • 举报
回复
可以用SQL Server自带的复制工具(Replication)同步, 每次同步数据时: 1.先设置2个局域网联网. 2.执行同步程序. 3.同步完成后,断开2个局域网. 全程用脚本方式实现.
qq511388601 2021-04-30
  • 打赏
  • 举报
回复
非常感谢上面几位大神的指教,我好好研究下,感谢!
唐诗三百首 2021-04-30
  • 打赏
  • 举报
回复
引用 4 楼 qq511388601 的回复:
你好 有没有可视化操作的bcp类似工具,因为另一个局域网里没有专业人员操作。
bcp是个在DOS下可执行的命令, 可以封装为桌面程序(如winform)给用户使用.
Hello World, 2021-04-30
  • 打赏
  • 举报
回复
固定导几个表的数据,自己写个简单的程序都可以。 或者代个简单的导入导出工具,教一下同事使用方法也行 参考工具:https://www.cnblogs.com/Leo_wl/p/3815722.html
qq511388601 2021-04-30
  • 打赏
  • 举报
回复
引用 3 楼 唐诗三百首 的回复:
如果暂时联网不可行, 可以在数据源端用bcp导出表数据到文件, 然后在目的端用bcp导入.
你好 有没有可视化操作的bcp类似工具,因为另一个局域网里没有专业人员操作。
唐诗三百首 2021-04-30
  • 打赏
  • 举报
回复
如果暂时联网不可行, 可以在数据源端用bcp导出表数据到文件, 然后在目的端用bcp导入.
吉普赛的歌 2021-04-30
  • 打赏
  • 举报
回复
引用 1 楼 唐诗三百首 的回复:
可以用SQL Server自带的复制工具(Replication)同步, 每次同步数据时: 1.先设置2个局域网联网. 2.执行同步程序. 3.同步完成后,断开2个局域网. 全程用脚本方式实现.
都已经说不能联网了。

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧