繁体   English   中英

在写入SQL数据库之前先写入“中间人”类型的文件

[英]Writing to a 'Middle-Man' kind of file before writing to SQL Database

我目前在Visual Studio 2008上的C#WinForms中进行编码,我们可能正在实现SQL数据库连接。 但是,它对于工业工作必须非常坚固,这意味着在写入过程中可能会断电。

我当时正在考虑在应用程序和SQL之间创建文件。 该程序首先将设置为FALSE的文件上的SAFE标志翻转,然后写入该文件。 一旦将其安全地写入该文件,它将SAFE标志翻转为TRUE,然后将其写入SQL数据库。 对于容易发生中断的环境,这样的事情是否可能/最好的解决方案?

您将要实现事务。

如果断电,则可以将事务设置为暂挂,以在系统重新联机时尝试重写信息。

我认为事务(开始...提交)内的sql写比任何您可以作为一个开发人员实现的方法都更健壮。 如果您从服务器确认已写入数据,则可以确定已写入数据。 如果不是,那么您知道必须重试。

当您写入数据库时​​,可以使用各种技术,包括消息队列(Message Queue)以确保将消息传递到其目的地,事务处理以确保整个保存完成或中止。 如果使用SQL Server,它还将管理尚未保存在事务日志中的数据库中的事务,从而解决中断后的恢复问题。 因此,您需要研究几种技术:

消息队列: Microsoft消息队列

交易处理: 交易基础

事务日志: SQL Server事务日志

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM