多个线程读写MS SQL同一个数据库,该怎么处理

多个线程读写MS SQL同一个数据库,该怎么处理,第1张

可以用VS的Integration Services项目,速度挺快的,还不用写代码。 要提升速度还可以用多个线程和写线程,不过要注意的是同一时刻只能有一个线程插入一个表,比如thread1插入表A,thread2这时候只能插入表B,不能插入表A。 这里的能不能是从性能的角度上说的,本身不会出错,但多个线程插入同一张表速度反而会下降,而且降的很厉害。 这两个性能差不多,IS也可以并行转移多张表,只是IS只要一条记录出问题整个任务就失败全部回滚,而编程则处理可以更灵活。

1:数据库文件定义连接到两个数据库命名为configasp

<%

Set Conn_One=serverCreateObject("adodbconnection")

ConnStr_One="Provider=Microsoftjetoledb40;data source="&serverMapPath("FS_MEmdb")

Conn_Oneopen ConnStr_One

Set Conn_Two=serverCreateObject("adodbconnection")

ConnStr_Two="Provider=Microsoftjetoledb40;data source="&serverMapPath("FS_ME1mdb")

Conn_Twoopen ConnStr_Two

%>

2:插入注册信息即可

<%

<!--#include file="configasp"-->

Conn_OneExecute("Insert Into 表 (字段) values (获取表单的值)")

Conn_TwoExecute("Insert Into 表 (字段) values (获取表单的值)")

%>

1需要建立密码表,使每个人的用户密码独立

2如果是一个界面,不需要每个库都建立密码表。但要以一个库为基础,需要用到别的库,在过程中调用就可以了

3在我知道的企业系统中是每个库都建立了自己的密码表的

4关于最后一个问题,使用同一个账号,用户界面是一样的,难以区分。 *** 作错误无法追责。但是有一点可以肯定,可以同时登陆客户端。

前提是2个update 同时获取了更新数据,

这个一般在sql 中可以事务处理,如下SQL

begin tran

update test

set a=1

where a<>1

commit tran

这样就不影响数据,因为第二个更新事务必须等待第一个完成,才能 *** 作事务进行更新动作

以上就是关于多个线程读写MS SQL同一个数据库,该怎么处理全部的内容,包括:多个线程读写MS SQL同一个数据库,该怎么处理、,asp如何将注册信息同时写入两个Access数据库里呀。、SQL多用户访问数据库如何解决的冲突(多用户同时访问数据库)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9796612.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存