Vorremmo evitare la duplicazione dei record nel nostro database di accesso MS utilizzando un indice univoco a più colonne. A causa del modo in cui i dati vengono inviati (tramite rete), talvolta vengono ricevuti dati duplicati. L'origine dati non invia un ID univoco, quindi l'opzione più semplice è impedire l'inserimento di record duplicati.Possiamo creare indici multicolor unici sui database di accesso MS?
Secondo Unique Index Design Guidelines:
Con indici univoci più colonne, l'indice garantisce che ogni combinazione di valori nella chiave dell'indice è unico. Ad esempio, se un indice univoco è creato su una combinazione del cognome, FirstName e colonne MiddleName, non due righe della tabella potrebbe avere lo stessa combinazione di valori per questi colonne.
Questo è tuttavia per SQL 2005, quindi non sono sicuro che sia possibile utilizzare l'accesso MS.
Credo che un'alternativa è quella di utilizzare forse la query (pseudo codice):
insert into foobar (a, b, c) values ('x', 'y', 'z')
where (a <> 'x') and (b <> 'y') and (c <> 'z')
... ma mi sento come un indice sarebbe meglio.
perché non dare le tabelle in questione un indice univoco? Non vedo cosa questo debba fare specificamente con C++, BTW. –
Sì, non ero sicuro se fosse rilevante. Abbiamo già un indice univoco; ma la fonte dei dati non fornisce questo. Aggiornerò la mia domanda –
L'indice univoco deve essere sui dati effettivi. –