Microsoft Access Impossibile creare questa relazione e imporre l'integrità referenziale

Microsoft Office Access mostra frequentemente l’errore “impossibile creare questa relazione e imporre l’integrità referenziale”? Devi pensare perché questo errore si ripresenta spesso sullo schermo? Per saperne di più su questo specifico problema di “integrità referenziale in accesso” basta controllare il post completo.

Questo blog include anche informazioni dettagliate sull’integrità referenziale, Scopo del rafforzamento dell’integrità referenziale, Come attivare o disattivare l’integrità referenziale, le correzioni per risolvere non possono creare questo errore di relazione e molto altro.

Scenario pratico:

Sto facendo questa domanda a uno dei nostri utenti. Non sono veramente aggiornato su Access. È Access 2010 (32 bit) su Windows 7 pro.

“Il problema è che abbiamo bisogno che il campo” clientnickname “(questo è il nome che abbiamo dato al campo) nella tabella dei client sia correlato al campo” clientnickname “nella tabella delle materie, con una relazione uno-a-molti, rafforzamento dell’integrità referenziale, con eliminazione a cascata e aggiornamento a cascata. Ho fatto tutto il possibile per assicurarmi che non ci siano record nella tabella dei problemi che non si riferiscono alla chiave primaria nella tabella dei client, ma si rifiuta di applicare l’integrità referenziale. Questa relazione è sempre esistita in questo db fino a poco tempo fa abbiamo notato che era stata cancellata. Nel tentativo di ricreare la relazione, questo è il problema che ho avuto. “

Dettagli circa l’errore:

Nome: Microsoft Office Access non può creare questa relazione e imporre l’integrità referenziale

Descrizione: Microsoft Office Access non è in grado di creare questa relazione e imporre l’integrità referenziale. @ I dati nella tabella ‘|’ violano le regole di integrità referenziale.Ad esempio, potrebbero esserci record relativi a un dipendente nella tabella correlata, ma nessun record per empl

Che cos’è la relazione nel database di accesso?

La relazione nel database di Access consente di combinare i dati di due diverse tabelle. Bene in un database desktop di accesso si può facilmente creare una relazione nelle finestre di relazione.

Come creare una relazione nel database di Access?

  •  Vai alla scheda Strumento Database, nel Gruppo Relazioni, tocca le Relazioni.

  • Se le relazioni non sono definite, la finestra di dialogo Mostra tabella appare automaticamente sullo schermo. Ma se non apparirà, vai su Design Tab> Relationship Group> fai clic su Mostra tabella.
  • Facendo clic sulla finestra di dialogo Mostra tabella verranno visualizzate tutte le tabelle e le query nel database. Per vedere solo le tabelle, toccare l’opzione Tabelle.
  • Dopo, selezionare una o più tabelle, quindi fare clic sull’opzione Aggiungi. Finendo il processo aggiungendo le tabelle, toccare l’opzione Chiudi.
  • Trascinare un campo mainaly il campo chiave primaria da una tabella a campo comune (chiave esterna) nell’altro campo. Per trascinare più campi, è necessario premere il tasto Ctrl. Quindi, toccare ciascun campo e trascinarli.
  • Si aprirà la finestra di dialogo Modifica relazioni.

  • Controlla che i nomi dei campi mostrati siano presenti nei campi comuni per la relazione. Se il nome del campo non è corretto, fare clic sul nome del campo e selezionare i campi delle corrispondenze migliori dall’elenco.
  • Al fine di rafforzare l’integrità referenziale per questa relazione, è necessario selezionare la casella Enforce Referential Integrity.
  •  Alla fine toccare l’opzione Crea.
  • Dopo aver completato tutto questo nella finestra Relazioni, toccare l’opzione Salva solo per salvare le modifiche al layout della relazione.

LEGGI ANCHE:

3 metodi istantanei per risolvere MS Access i problemi di corruzione delle query di

Cosa significa integrità referenziale (RI)?

significa integrità referenziale

L’integrità referenziale è un concetto di database relazionale, in base al quale la relazione della tabella deve essere sempre coerente. In alternativa, significa anche che i campi di chiavi esterne devono corrispondere alla chiave primaria che fa riferimento alla chiave esterna.

Pertanto, tutte le modifiche apportate alla chiave primaria devono essere applicate a tutte le chiavi esterne. Allo stesso modo si applica la stessa restrizione alle chiavi esterne in quanto qualsiasi aggiornamento deve essere distribuito alla chiave genitore primaria.

Esempio di integrità referenziale:

Prendi in considerazione un database bancario con le due tabelle:

 Tabella ACCOUNTS_MASTER: contiene i dati del conto bancario di base come il tipo di conto, il titolare del conto, la data di creazione dell’account e i limiti di prelievo.

 Tabella CUSTOMER_MASTER: contiene i dati del cliente / titolare dell’account come il numero di previdenza sociale, il nome, l’indirizzo e la data di nascita.

Per l’identificazione univoca di ciascun cliente / titolare di un conto nella tabella CUSTOMER_MASTER, viene creata una colonna chiave primaria denominata CUSTOMER_ID.

Per identificare la relazione cliente e conto bancario nella tabella ACCOUNTS_MASTER, è necessario fare riferimento a un cliente già esistente nella tabella CUSTOMER_MASTER. Pertanto, la colonna CUSTOMER_ID, anch’essa creata nella tabella ACCOUNTS_MASTER, è una chiave esterna.

Bene, questa colonna è speciale perché i suoi valori non sono stati creati di recente. Piuttosto, questi valori devono fare riferimento a valori identici e esistenti nella colonna chiave primaria di un’altra tabella, che è la colonna CUSTOMER_ID della tabella CUSTOMER_MASTER.

L’integrità referenziale è uno standard che significa che qualsiasi valore CUSTOMER_ID nella tabella CUSTOMER_MASTER non può essere modificato senza modificare il valore corrispondente nella tabella ACCOUNTS_MASTER.

Qual è lo scopo di far rispettare l’integrità referenziale?

Applicare l’integrità referenziale in Access 2013/2016

Lo scopo principale dell’utilizzo dell’integrità referenziale è quello di prevenire i record orfani e mantenere i riferimenti completamente sincronizzati. In modo che non vi è alcun record nel database di accesso che fa riferimento ad altri record che non esiste più.

L’utente può applicare l’integrità reverenziale abilitandolo per la relazione della tabella. Una volta imposto, l’accesso rifiuta qualsiasi operazione che violi l’integrità referenziale per quella relazione di tabella. L’accesso rifiuta anche gli aggiornamenti che cambiano la destinazione dei riferimenti e anche le eliminazioni che rimuovono la destinazione dei riferimenti.

Al fine di avere accesso si propaga aggiornamenti e cancellazioni referenziali. In modo che tutte le righe correlate vengano modificate di conseguenza, controlla la sezione che imposta le opzioni di cascata.

Condizione in cui funziona l’integrità referenziale:

L’integrità referenziale funziona solo quando la seguente condizione corrisponde:

 Uno dei campi collegati i record del database di accesso è una chiave primaria.

 I campi correlati devono avere lo stesso tipo di dati e la stessa dimensione.

 Entrambe le tabelle si trovano nello stesso database di accesso.

 Gli stessi record nella tabella correlata non sono consentiti a meno che un record corrispondente non sia già presente nella tabella primaria.

 Pur stabilendo l’integrità referenziale, un problema comune riscontrato dagli utenti sono dati orfani in una tabella correlata.

Come attivare o disattivare l’integrità referenziale?

  1. Aprire la finestra delle relazioni e toccare la linea di relazione per la relazione che si desidera modificare. La linea di relazione selezionata apparirà più spessa dopo la selezione.
  2. Ora fai un doppio tocco sulla linea di relazione selezionata. Come questo si aprirà la finestra di dialogo Modifica relazioni.
  3. Effettuare la selezione per la casella di controllo dell’integrità referenziale di applicazione.
  4. Apportare eventuali modifiche aggiuntive alla relazione se necessario.
  5. e quindi fare clic su OK.

ANCHE LEGGI

7 modi per risolvere il problema di arresto anomalo di Microsoft Access durante l’apertura del report

Regole impostate dopo aver stabilito l’integrità referenziale

Dopo aver stabilito l’integrità referenziale, vengono impostate le seguenti regole.

 Non è possibile aggiungere record alla tabella correlata finché non esiste già un record corrispondente nella tabella primaria.

 Non è possibile modificare il valore della chiave primaria nella tabella primaria se esiste lo stesso record nella tabella correlata.

 Impossibile eliminare il record da una tabella primaria se i record corrispondenti esistono in una tabella correlata.

Come risolvere MS Access “Non è possibile creare relazioni per imporre l’integrità referenziale”?

MS Access Non è possibile creare relazioni per imporre l'integrità referenziale

Per correggere l’accesso “Impossibile creare relazioni per imporre l’integrità referenziale. I dati esistenti nella tabella violano le regole di integrità referenziale nella tabella. “

Si tenta di creare una relazione utilizzando la clausola CONSTRAINT dell’istruzione ALTER TABLE, ma i dati esistenti nelle due tabelle violano i vincoli di integrità referenziale.

Ad esempio: deve esserci un record relativo al dipendente nella tabella correlata ma nessun record corrispondente per il dipendente nella tabella primaria.

Per creare una relazione, è necessario modificare i dati in modo che i record primari esistano per tutti i record pertinenti.



Come risolvere Microsoft Access “Impossibile creare questa relazione e imporre l’integrità referenziale” in Access 2013/2016?