我面临着以下问题两个星期前,我不知道如何处理它走的是性能问题,考虑到数据的完整性。
我要做的就是:
我想从XML文件将数据迁移到其类似表在我的数据库。
例如:
我有两个节点(XML文件):
courses
,teachers
两个表(数据库)
courses
,teachers
。
我允许用户将XML文件上传到我的服务器上的文件夹,我开始读取XML文件和数据插入到我的数据库。
的问题是:
如果插入操作过程中的一些故障发生时,我想删除所有所有表中插入记录(或回滚)。
我开始思考transaction
,每个实体的插入会通过交易来进行,但我面对两个问题:
我应该把所有的实体都插入在一个事务或 一个实体每个上传器都有一个事务?(所有实体数据必须全部插入或根本没有插入)。
时,我有记录的数量庞大的说(1500记录)。以下 例外出现:
This IfxTransaction has completed; it is no longer usable,没有 一个修复它。
我的团队负责人告诉我不要使用该事务,因为它会锁定表和许多用户使用这些表。他想要一些其他的 机制。
请我想解决我的问题(详细的说明),如何处理这种情况下,保持性能问题和数据的完整性和一致性。