簡體   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