Come abbiamo discusso nei nostri blog precedenti, il database di Access non è immune da errori e problemi. Uno di questi errori che gli utenti potrebbero riscontrare quando tentano di creare un nuovo oggetto nel database è: Microsoft Access object already exists error 3012. In genere si verifica a causa di un errore o di un arresto anomalo dell’applicazione Access durante la gestione. Bene, in questo articolo approfondiremo le complessità di questo errore, ne comprenderemo le cause e le soluzioni praticabili per risolvere l’errore mostrato di seguito.
Quindi iniziamo…
Strumento di Riparazione Database MS Access Gratuito
Ripara i file di database MDB e ACCDB corrotti e recupera facilmente tabelle, query, indici e record di database eliminati. Prova ora!
Facendo clic sul pulsante Download sopra e installando Stellar Repair for Access (14.8 MB), riconosco di aver letto e accettato il Contratto di licenza per l'utente finale e la Politica sulla riservatezza di questo sito.
Navigazione rapida:
- Parte 1: cos’è l’errore di runtime 3012?
- Parte 2: perché si verifica questo errore?
- Parte 3: modi per correggere l’errore 3012 dell’oggetto MS Access già esistente
- Parte 4: utilizzare il software di riparazione di Access per correggere il file di database di Access danneggiato
- Parte 5: misure preventive per evitare l’errore 3012
Cos’è l’errore di runtime 3012?
Puoi ricevere l’errore di runtime “3012” quando tenti di creare oggetti come tabelle, query, moduli e report nel tuo database di Access. Questo avviso pop-up è un chiaro segnale che qualcosa è andato storto nel tuo database. Pertanto, dovrebbe essere risolto il prima possibile per riottenere l’accesso agli oggetti del database.
Perché si verifica questo errore?
Esistono numerose cause che possono innescare questo errore. Di seguito sono riportate le ragioni alla base di ciò. Leggi questi motivi con molta attenzione poiché ciò ti aiuterà anche a scoprire dove il problema persiste effettivamente nel tuo database.
- Forse l’oggetto del database è connesso a un database o uno schema specifico come una funzione o una tabella definita dall’utente. E un altro oggetto con lo stesso nome è già presente nello schema o nel database.
- Il ruolo attualmente utilizzato non dispone dei privilegi per utilizzare gli oggetti.
- È importante avere un nome univoco nelle classi di caratteristiche del database, principalmente quello mantenuto dallo stesso utente.
- L’oggetto MS Access esiste già nel database. L’errore si verifica anche quando si riapplica il modello UML e la feature class già esistente ha un tipo di feature diverso.
Modi per correggere l’oggetto MS Access già esistente Errore 3012
Ecco i metodi passo-passo per risolvere l’errore.
Modo 1: applica nomi di oggetti diversi
Se l’oggetto di database esistente in precedenza e l’oggetto attualmente in creazione presentano una leggera differenza nel loro scopo di utilizzo. In tal caso, assegnare nomi diversi a entrambi gli oggetti.
Si è riscontrato che a causa di una collisione tra nomi di oggetti uguali o simili si verifica l’errore di accesso “oggetto già esistente“.
Leggi anche: Risolto il problema “Il motore di database di Microsoft Access non riusciva a trovare l’oggetto” (errore 3011)
Modo 2: utilizzare diversi tipi di oggetti
Un altro modo per risolvere facilmente questo messaggio di errore è rinominare o eliminare la feature class già esistente.
Oppure puoi provare a rinominare la feature class UML in modo da evitare il problema del conflitto di denominazione.
Se ti stai avvicinando alla riapplicazione dello schema per aggiornare la feature class precedentemente esistente. Quindi assicurati che il tipo di entità geografica della classe di entità geografiche esistente e della classe UML non siano le stesse.
Metodo 3: verificare la dipendenza dell’oggetto per correggere l’errore 3012 dell’oggetto Microsoft Access già esistente
L’opzione migliore per correggere l’errore dell’oggetto database di Access esiste già è utilizzare la “funzione Dipendenze oggetto di MS Access“. È l’opzione più intelligente per tenere traccia di tutti gli oggetti interconnessi presenti nel tuo database Access.
Una volta che sai come ogni oggetto è correlato tra loro all’interno del tuo database, puoi facilmente evitare di creare nuovi oggetti nella posizione sbagliata.
Metodo 4: imposta la proprietà indicizzata di un campo su Sì (nessun duplicato)
Utilizzando questa opzione puoi ostacolare rigorosamente l’immissione di valori duplicati nella tabella del database di Access.
Puoi utilizzare questo metodo anche come misura preventiva per evitare che questo errore si ripeta in futuro.
Facciamo sapere come si deve fare:
- Vai al riquadro di navigazione e fai clic con il pulsante destro del mouse sulla tabella in cui desideri applicare questa regola di non duplicazione.
- Dopo aver fatto clic con il tasto destro, dalle opzioni elencate a discesa scegliere la Visualizzazione Progettazione.
- Ora dalla tabella selezionata scegli il campo in cui devi impostare la regola del valore univoco.
- Nella finestra aperta della vista struttura della tabella, in basso, c’è una colonna di Proprietà campo.
- Ora all’interno di queste proprietà del campo, vai alla scheda generale e nella proprietà indice imposta Sì (nessun duplicato).
- Alla fine, salva tutte le modifiche apportate nel tuo database.
Nota: ricorda una cosa: eseguire questo passaggio potrebbe ostacolare l’unicità e l’integrità del tuo database.
per ulteriori riferimenti, puoi leggere questo utile post Index object (DAO).
Leggi anche: Guida interna all’errore 3048 di MS Access Impossibile aprire altri database
Modo 5: utilizzare la query di definizione dei dati per creare un indice univoco per il campo
- Dal menu toccare la scheda Crea, quindi accedere alle Query
- Ora da questo gruppo di query scegli l’opzione Progettazione query.
- Devi chiudere la finestra di dialogo di Mostra tabella quando si apre.
- Nella scheda di progettazione delle query, vai su Risultati. Ora premi la freccia presente sotto l’opzione Visualizza, quindi tocca l’opzione Visualizza SQL.
- Ora devi eliminare l’intero SQL dalla tua query.
- Basta incollare o digitare i comandi SQL indicati di seguito nella query.
CREATE UNIQUE INDEX index_name
ON table (field);
- In SQL, sono disponibili le seguenti opzioni per sostituire le variabili:
- Sostituisci nome_indice con il nome dell’indice:
È una buona opzione impostare un nome che ti aiuterà a identificare di cosa tratta l’indice.
Supponiamo che se stai utilizzando l’indice per rendere univoco il campo dei numeri di telefono, assegnagli un nome unique_phone.
- Sostituisci la tabella con il nome della tabella contenente il campo in cui desideri essere indicizzato. Se il nome della tua tabella contiene caratteri speciali, devi racchiudere il nome tra parentesi quadre.
- Sostituisci il campo con il nome del campo che desideri indicizzare. Se il nome del campo contiene anche caratteri speciali, non dimenticare di mantenere il nome tra parentesi quadre.
- Successivamente, salva la query e chiudila.
- Ora è il momento di eseguire la query in modo che possa creare l’indice.
Nota: hai la possibilità di eseguire la query dalla macro utilizzando l’azione macro EseguiSQL.
Utilizzare il software di riparazione di Access per correggere il file di database di Access danneggiato
Quando l’errore rimane irrisolto, è il momento di procedure Access Riparazione & Recupero Software. Questa utility può risolvere tutti i tipi di errori e risultati basati sulla corruzione in un database MS Access totalmente riparato.
Questo strumento recupera tutti gli oggetti del database, come record, tabelle, relazioni, report, query, indici, macro, moduli e moduli eliminati dopo aver riparato il database gravemente danneggiato.
Puoi anche provare la versione demo gratuita di questo strumento per visualizzare in anteprima gli oggetti del database Access fisso.
* Facendo clic sul pulsante Download sopra e installando Stellar Repair for Access (14.8 MB), riconosco di aver letto e accettato il Contratto di licenza per l'utente finale e la Politica sulla riservatezza di questo sito.
Guida passo passo per utilizzare lo strumento di riparazione e ripristino di MS Access
Leggi anche: Come correggere Access “Non ci sono oggetti in questo controllo” (errore 2683)?
Misure preventive per evitare l’errore 3012
Mantieni regolarmente il tuo database MS Access eseguendo il backup, compattandolo e concedendo le autorizzazioni appropriate agli oggetti del database. Queste misure precauzionali possono ridurre significativamente la possibilità di incontrare il codice 3012 in Access.
Domande e soluzioni degli utenti
Cosa devo fare se l’errore persiste dopo aver utilizzato Access Repair Tool?
Se l’errore persiste dopo aver utilizzato lo strumento di riparazione di Access, valuta la possibilità di consultare un professionista del database per una migliore assistenza.
È disponibile uno strumento gratuito per la riparazione del database di Access?
Sì, l’utilità Compatta e ripristina integrata di Access è disponibile per la riparazione del database di Access.
Con quale frequenza devo aggiornare Microsoft Access?
Dovresti aggiornare regolarmente il tuo software Microsoft Access per migliorare la sicurezza e risolvere potenziali problemi.
Linea di fondo
Affrontare l’errore di runtime di Access “3012” che l’oggetto esiste già è fondamentale per mantenere un database sano ed efficiente. Diagnosticando il problema e seguendo i metodi passo passo sopra indicati, puoi risolvere efficacemente questo errore per garantire un’esperienza fluida e priva di errori.
Se conosci qualche altra soluzione per correggere questo errore, sentiti libero di condividerla con noi sui nostri account FB & Twitter.
Questo software garantisce riparazione e recupero di senza soluzione di continuità del database ACCDB e MDB. Esso ripristina tutti gli oggetti tra cui tabelle, report, query, record, moduli e indici insieme a moduli, macro, ecc. Fissare Microsoft Access problemi di ora in 3 semplici passaggi:
- Scarica Stellar Access database riparazione strumento rated ottima su Cnet.
- Fai clic sull'opzione Sfoglia e Cerca per individuare il database di Access corrotto.
- Fai clic su Ripara Pulsante per riparae visualizzare in anteprima gli oggetti del database.