大家好,我對資料庫不太熟練,現在想請教大家一個問題。有一個專案,在持續不停的接收資料,但是接收的資料是有間隙的,比如500毫秒、50毫秒或者更短。總之有間隔,但是一直在接收,而且每一條的資料量還比較大(可能是幾M),我需要把接收的資料存入資料庫。為了能達到比較高的性能,應該用事務的方式,多條資料一次性的插入,而不是一條一條的插入。但是我有個疑問,每條資料之間有間隔,能用事務嗎,要怎么用呢?等多久來一次統一的插入呢。并且,如果有錯的話,那我前面收的資料,還沒來得及插入的,也報銷了,怎么能減小損失呢。我不想因為一條資料的失敗讓前面已收到的資料都沒保存。這個要如何解決呢。我對資料庫經驗挺少,還希望大家多多發言,多多幫忙,謝謝了!還希望有經驗的朋友能用代碼示例一下,我是用VC2015開發的。
uj5u.com熱心網友回復:
收到資料,寫快取,同時記錄一個批次ID,達到一定量,批量寫資料庫,寫資料庫成功,清理快取 ,失敗則事物回滾,根據批次ID進行重試。uj5u.com熱心網友回復:
你好,朋友,謝謝誒你的回答。你能再說具體一些嗎,另外,只有這個方法,還有別的方法嗎。有沒有什么庫比較容易的解決這個問題呢。我資料庫的經驗比較少,還請你多指點,再次感謝。
uj5u.com熱心網友回復:
應該在你程式里控制事務的開始和提交,具體多少條記錄提交一次,由你程式自己控制轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/55778.html
標籤:MySQL
