问:
两周前我遇到了以下问题,考虑到性能问题和数据完整性,我不知道如何处理它。
我要做的是:
我想将XML 文件中的数据迁移到我数据库中的类似表中。
例如 :
我有两个节点(XML 文件):
courses
,teachers
两张表(数据库)
courses
,teachers
.
我允许用户将 XML 文件上传到我的服务器上的一个文件夹,然后我开始读取 XML 文件并将数据插入到我的数据库中。
问题是:
如果在插入操作过程中发生故障,我想删除所有表中的所有插入记录。(或回滚)。
我开始思考transaction
,每个实体的插入都会通过事务来执行,但我面临两个问题:
我应该将所有实体的所有插入放在一个事务中还是一个实体放在事务中?(所有实体数据必须全部插入或根本不插入)每个上传者。
当我有大量记录时说(1500条记录)。出现以下异常:
此 IfxTransaction 已完成;它不再可用,没有人修复它。
我的团队负责人告诉我不要使用事务,因为它会锁定表并且许多用户使用这些表。他想要一些其他的机制。
请我想解决我的问题(详细说明),如何处理这种情况并维护性能问题以及数据完整性和一致性。