Discussione:
accodamento a tabella con chiave primaria (e duplicati non ammessi)
(troppo vecchio per rispondere)
BFS
2024-02-21 12:46:40 UTC
Permalink
Buongiorno, ho un database con una tabella Tabella1 con contatore e
chiave primaria (e duplicati non ammessi).
Questa tabella è in relazione uno a molti con un'altra tabella.
Avrei la necessità di accodare (di tanto in tanto) alcuni record da una
tabella Tabella2 che ho creato con gli stessi campi della Tabella1 e
senza chiave primaria.
Quando eseguo viene fuori l'errore violazione di chiave e non capisco
perchè, visto che non accodo nulla al campo contatore chiave primaria
della Tabella1.
Come posso procedere?
Grazie
Gianni
puoi postare la tua struttura della tua tabella1 e della query di
accodamento?

BFS
giannirusso
2024-02-21 20:35:11 UTC
Permalink
Post by BFS
puoi postare la tua struttura della tua tabella1 e della query di
accodamento?
BFS
Tabella Clienti in relazione uno a molti con altra tabella (integrità
referenziale)

IdClienti numerazione automatica chiave primaria
Indirizzo testo breve
CAP testo breve
Citta testo breve
CodiceCliente testo breve
DataInserimento Data/ora

Query ClientiInserireDatabase
INSERT INTO Clienti (Indirizzo, CAP, Citta, CodiceCliente, DataInserimento)
SELECT ClientiInserireDatabase.Indirizzo, ClientiInserireDatabase.CAP,
ClientiInserireDatabase.Citta, ClientiInserireDatabase.CodiceCliente,
ClientiInserireDatabase.DataInserimento
FROM ClientiDaInserireDatabase;




Grazie
Gianni
BFS
2024-02-22 06:31:44 UTC
Permalink
Post by giannirusso
Post by BFS
puoi postare la tua struttura della tua tabella1 e della query di
accodamento?
BFS
Tabella Clienti in relazione uno a molti con altra tabella (integrità
referenziale)
IdClienti numerazione automatica chiave primaria
Indirizzo testo breve
CAP testo breve
Citta testo breve
CodiceCliente testo breve
DataInserimento Data/ora
Query ClientiInserireDatabase
INSERT INTO Clienti (Indirizzo, CAP, Citta, CodiceCliente, DataInserimento)
SELECT ClientiInserireDatabase.Indirizzo, ClientiInserireDatabase.CAP,
ClientiInserireDatabase.Citta, ClientiInserireDatabase.CodiceCliente,
ClientiInserireDatabase.DataInserimento
FROM ClientiDaInserireDatabase;
Grazie
Gianni
sembra tutto ok se solo idclienti è campo chiave
il messaggio di errore esattamente cosa dice?

BFS
giannirusso
2024-02-22 08:23:31 UTC
Permalink
Post by BFS
sembra tutto ok se solo idclienti è campo chiave
il messaggio di errore esattamente cosa dice?
BFS
IdClienti è campo chiave primaria ed è l'unico campo chiave. L'errore
dice che ci sono 14 (tanti quanti i record da accodare) violazioni di
chiave.

Voglio fare delle prove con un'altra tabella simile, magari riesco a
trovare l'errore.

Grazie
Gianni
giannirusso
2024-02-22 11:56:04 UTC
Permalink
Post by giannirusso
Voglio fare delle prove con un'altra tabella simile, magari riesco a
trovare l'errore.
Voglio fare delle prove con un'altra tabella simile, magari riesco a
trovare l'errore.
Ho provato a creare una tabella copia di Clienti, lasciando tutto
invariato compresa la chiave primaria e l'accodamento in questa tabella
clone funziona.
A questo punto che il problema sia che la chiave primaria IdClienti
della tabella Clienti è in relazione uno a molti con altra tabella con
integrità referenziale e aggiornamento campi correlati a catena?

Grazie
Gianni
BFS
2024-02-22 13:21:41 UTC
Permalink
Post by giannirusso
Post by giannirusso
Voglio fare delle prove con un'altra tabella simile, magari riesco a
trovare l'errore.
Voglio fare delle prove con un'altra tabella simile, magari riesco a
trovare l'errore.
Ho provato a creare una tabella copia di Clienti, lasciando tutto
invariato compresa la chiave primaria e l'accodamento in questa tabella
clone funziona.
A questo punto che il problema sia che la chiave primaria IdClienti
della tabella Clienti è in relazione uno a molti con altra tabella con
integrità referenziale e aggiornamento campi correlati a catena?
Grazie
Gianni
te lo stavo per scrivere
secondo me non è uno a molti
la seconda tabella si aspetta di trovare un id uguale per ogni id della
tua tabella di destinazione a mio avviso


BFS
giannirusso
2024-02-26 08:39:49 UTC
Permalink
Post by BFS
te lo stavo per scrivere
secondo me non è uno a molti
la seconda tabella si aspetta di trovare un id uguale per ogni id della
tua tabella di destinazione a mio avviso
Prova e riprova ho trovato l'inghippo. C'erano degli altri campi con
numerazione automatica che erano in relazione molti a uno e che
mancavano nella query di accodamento.
Post by BFS
BFS
Grazie dell'aiuto
Gianni

Loading...