Concorrenza MS Access (MDB)

Per un piccolo progetto ho bisogno di utilizzare un semplice database con requisiti molto chiari: poche tabelle, non più di poche migliaia di record in totale, 2 o 3 utenti. Sto lavorando in ambiente .NET.

Dato che un server di database (anche quelle Express Edition) sembra un enorme overkill in questo caso, un database MDB molto semplice potrebbe fare per la maggior parte dei requisiti. Sono comunque preoccupato per la concorrenza. La mia idea è di posizionare il file .mdb su una condivisione di rete e consentire agli utenti di accedere a questo file dai loro client basati su .NET. Il db è principalmente finalizzato alle operazioni di sola lettura, ma gli utenti occasionalmente hanno bisogno di aggiornare / cancellare anche i record. Se ciò non è ansible al momento (a causa del blocco di db o di qualsiasi altra cosa), posso tenere gli aggiornamenti sul client ed elaborarli in un secondo momento.

La domanda stessa segue questi punti:

  • Come vengono gestite le letture contemporanee in MDB?
  • In che modo gli aggiornamenti / eliminazioni concorrenti vengono gestiti in MDB?
  • Esiste un concetto di blocco e come posso sfruttarlo in un’app .NET?
  • Il posizionamento del file MDB su una rete condivide un’idea buona o orribile?

Poiché lavoro in .NET, mi piacerebbe anche sapere come posso rilevare eventuali problemi di concorrenza e prendere le misure appropriate. Ad esempio, quale eccezione dovrei prendere e quale azione consiglieresti di intraprendere?

EDIT : Potrebbe essere la mia ctriggers descrizione del problema, ma la maggior parte delle risposte sembra suggerire di andare per un server DB in piena regola. Comprendo le differenze e i vantaggi di avere un’installazione server e ho infatti implementato un buon numero di progetti su MSSQL e Oracle. In questa domanda, tuttavia, mi occupo solo di Access e dei suoi problemi di concorrenza, quindi per favore non suggerire un server db.

Grazie per l’aiuto.