欢迎您:游客!请先
登录
或
注册
风格
恢复默认设置
|
展区
文件集浏览
图片集浏览
Flash浏览
音乐集浏览
电影集浏览
|
搜索
Foxtable(狐表)
→
用户栏目
→
专家坐堂
→ 请教【提取表A not in 表B的行】的性能问题,表B-SQLGetComboListString后再用表A-SQLSelect (Not in) 的方法是正解吗?
新的主题
投票帖
小字报
下一主题 >>
<< 上一主题
共有
2033
人关注过本帖
平板
打印
复制链接
主题:请教【提取表A not in 表B的行】的性能问题,表B-SQLGetComboListString后再用表A-SQLSelect (Not in) 的方法是正解吗?
有点蓝
小
大
1楼
|
信息
|
搜索
|
邮箱
|
主页
|
UC
加好友
发短信
等级:超级版主
帖子:
107730
积分:547983
威望:0
精华:9
注册:
2015/6/24 9:21:00
Post By:2017/1/21 9:41:00 [
只看该作者
]
1、使用事务,如果不喜欢出错后一次性回滚全部,可以把上传的数据分批处理,比如
一天要传1000个行,分成10次,每次100行,这100行在一个事务中,这样出错就只回滚100行。
2、如果上传后表B数据都是新增的可以考虑使用
SqlBulkCopy:
http://foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=91737
3、2个表都增加一个时间列,所有新增的行都记录新增时的服务器时间,表B增加一个标记列,标记是哪个客户端上传的数据。
那么客户端在上传表A数据的时候只需要上传比之前本客户端上传的数据时间晚的数据即可,无需通过“
ItemID not in
”查询再上传。
4、数据同步可以做到一个独立的项目中,在服务器后台定时上传,或者手工通知后上传。这样就不会存在普通操作人员认为软件假死的现象了
下一主题 >>
<< 上一主题
RSS2.0
|
Xhtml无图版
|
Xslt无图版
Copyright © 2000 - 2018
foxtable
.com
Tel: 4000-810-820 粤ICP备11091905号
Powered By
Dvbbs
Version 8.3.0
页面执行时间 0.18750 秒, 5 次数据查询