目前有这样一个问题:需要对两个数据库同时进行操作,两库中的表一模一样,但是两个库又没有关联。同时需要操作的是插入和更新,同时更新的SQL语句是一条条的Update,大约有50多万条,同时插入的SQL语句也是一条条的Insert。 这两个操作加起来大概有120万的数据量要同时进行更新,又不能用存储过程(是上面必须规定用C#里面的事物操作),难题就在这里:
如何让同时更新和插入要么全部成功,要么全部失败?
以上无论是成功还是失败,如何让SQL的效率非常高的完成百万量同时的操作呢? 主要问题还是效率上的问题,现在写的代码,速度非常非常的慢(主要是SQL执行的非常慢),服务器配置是十六核CPU,主频都不低,内存也是十六G的。坐等高手解答~~
如何让同时更新和插入要么全部成功,要么全部失败?
以上无论是成功还是失败,如何让SQL的效率非常高的完成百万量同时的操作呢? 主要问题还是效率上的问题,现在写的代码,速度非常非常的慢(主要是SQL执行的非常慢),服务器配置是十六核CPU,主频都不低,内存也是十六G的。坐等高手解答~~
最快的是BULK INSERT
SQL SERVER的吗??? 能不能给个有用的链接?? 我找的都是乱七八糟的。
--链接服务器
---Srv-link
MSSQL是这个吧
Oracle中是DB LINK
至于update可以在之前备份一下操作表,执行过程有失败就还原
如果只能使用SQL语句,那就使用长连接吧,sqlconnection不要关
声明2个connection和2个transaction,只要有异常2个transaction都回滚
Insert into Table(column1,column2)
value
(1,1)
(2,2)
(3,3)...
请问下,分开的Insert和这样拼接的Insert在效率上会有差别吗?8L 11L 朋友的方法我去看看可不可行。