Verifica key se già presente in tabella

di il
6 risposte

Verifica key se già presente in tabella

Salve ho un piccolo problema.Vorrei sapere come verificare un campo(key) inserito da una maschera in una tabella.E quindi controllare in tutta tabella
se già presente.Se già presente mi deve comparire un Msgbox altrimenti niente.

6 Risposte

  • Re: Verifica key se già presente in tabella

    Se non ho capito male hai un campo chiave primaria, forse di tipo "Testo breve" e quando inserisci un nuovo valore vorresti che non fosse uno già inserito in precedenza. Giusto?
  • Re: Verifica key se già presente in tabella

    Si.Ho una campo chiave primaria che nel mio caso è un codice fiscale.Quindi voglio che una volta inserito dalla maschera mi controlli se sia già presente nella tabella.
  • Re: Verifica key se già presente in tabella

    È un argomento già trattato...nei termini di come lo poni tu. Si tratta di mettere in atto un codice VBA che controlli il Recordset "prima di passare a record successivo"...non ricordo dove pescarlo.
    Attendi risposta da utenti più esperti...magari si affaccia proprio @Alex che questa tematica la conosce bene.
  • Re: Verifica key se già presente in tabella

    Ok grazie lo stesso
  • Re: Verifica key se già presente in tabella

    ANGELO98 ha scritto:


    ...Ho una campo chiave primaria .....
    Questa chiave primaria è definita come univoca (nella tabella) ?
    Se sì : stai tranquillo che access ti informa che l' inserimento NON è possibile (indice duplicato)
    Se no (ma allora ha senso chiamarla chiave primaria ? ) : in un evento consono (magari BeforeInsert) occorre effettuare la ricerca dell' esistenza della chiave che stai tentando di inserire e se già presente avvisi con msgbox (e annulli l' evento se NON vuoi chiavi doppie ... ma se NON vuoi chiavi doppie perchè non definisci la chiave come univoca ? )
  • Re: Verifica key se già presente in tabella

    Come ti ha spiegato Max se quella è la PK sarà JET a lamentarsi che stai cercando di duplicare.
    Se però vuoi gestire l'errore puoi su evento FORM_ERROR individuare il codice specifico di duplicazione PK che a memoria 3022 e agire di conseguenza con le azioni che ritieni adatte.
Devi accedere o registrarti per scrivere nel forum
6 risposte