Newsgroup: it.comp.appl.access
Titolo: Errore "chiave di ricerca non trovata"

Ciao a tutti,
ho un problemino con un record.
Un utente del mio db mi ha segnalato che è sparito un record e che quando 
tenta di ricrearlo il db si comporta come se ci fosse già. Verifico il 
record nella tabella ed effettivamente non lo trovo. Ne trovo invece uno 
stranissimo, che penso sia il record "sparito" modificato dal sistema, o 
qualcosa di simile. In sostanza il record, che dovrebbe contenere 
semplicemente Codice, mese e anno, contiene invece una serie di numeri più 
lunghi che non hanno nulla a che vedere con lo scopo del record e che non 
possono essere stati inseriti con una svista. Poco male, penso: cancello il 
record e lo inserisco corretto, così risolvo il problema. Invece no! Il db 
(leggi Database Bastardo) mi esce con un errore: CHIAVE DI RICERCA NON 
TROVATA IN ALCUN RECORD. Non posso cancellare il record ne modificarlo, e 
neanche reinserire il record sparito perchè lui pensa che ci sia già.
Ora... se non si capisce, io non sono esattamente un programmatore, di 
solito me la cavo spulciando F1, siti, guide e cose varie, ma stavolta nulla 
mi fa  intuire dove trovare la soluzione del problema.
Qualcuno mi da una dritta?
Grazie
Alex 

 ha scritto nel messaggio 
news:dg8lnf$gki$1...@carabinieri.cs.interbusiness.it...

Prove da fare...
Prova1
1)Cancellare il record
2)Compattare il DB
3)Reinserire il record
4)Compattare il db
5)Verificarne il funzionamento
Prova2
1)Cancellare il record
2)Compattare il db
3)Importare tutto il contenuto del db in un nuovo db
4)Compattare il nuovo db
5)Inserire il record nel nuovo DB
6)Verificare il funzionamento del nuovo DB ed eventualmente cancellare il 
vecchio
Fammi sapere


Anche io mi perdo sempre le chiavi... soprattutto quelle dello scooter!!!
In ogni caso dovresti essere in presenza di corruzione di record.
Importa tutte le altre tabelle in un nuovo db, e copia i record fino a
quello incriminato nella nuova tabella
(non importartela, perchè ti porti dietro anche la corruzione)
Dai cmq un'occhiata al sito di Karl sez. Bug
-- 
_ _
Ciao
MAssimiliano Amendola            
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:  
www.donkarl.com/it

 ha scritto 
nel messaggio news:dg8m60$dbc$1...@domitilla.aioe.org...


 ha scritto nel messaggio 
news:j4RVe.38497$TR5....@news.edisontel.com...


 dati corrotti... Alex
scrivi DOPO il quoting,
cme faccio io.
Spesso è dovuto a schede di rete realteck


 Spesso è dovuto a schede di rete realteck
Ma anche spesso a utilizzo di tabelle (immissioni,modifica,cancellazione 
record) mentre è avviato un esecuzione di codice o di query elaborate... è 
una sorta di perdita di pacchetti xkè utilizzati da altri processi (ma 
questa è una mia interpretazione)...
...io faccio in questo modo (e mi trovo bene) in una tabella che chiamo 
Tbl_Setting ho un campo Si/No che setto a True quando lancio tali 
codici/query elaborate (e lo riporto a False quando le stesse terminano)... 
questo campo lo uso per impedire processi di cui sopra quando il campo è = a 
True... è una sorta di blocco temporaneo.
PS. Scrivi sotto al messaggio al quale rispondi. (regola del quoting) 

 Spesso è dovuto a schede di rete realteck
non ho idea di cosa siano ma immagino che anche se lo sapessi non potrei 
farci nulla. Dubito che l'ufficio le cambierà perchè ogni tanto salta xaria 
un record.
Grazie mille della dritta.
Alex

 ha scritto nel messaggio
news:dg8lnf$gki$1...@carabinieri.cs.interbusiness.it...

Prova a creare un nuovo campo nella tabella dello stesso
tipo del campo Key che risulta danneggiato.
Dalla visualizzazione tabelle poi fai un copia ed
incolla della colonna delle key sulla nuova, in questa fase potrebbe
darti errori ma tu prosegui.
Controlla infine che tutti i valori del nuovo campo siano aggiornati al
vecchio valore, infine cancella la vecchia key e ricreala sul nuovo.
se tutto funziona cancella il vecchio campo.
Sui record corrotti con questo metodo riesco sempre a
riprendere tutto.
Ovvio che se hai delle correlazioni tra tabelle
sul campo key in questione, devi prima eliminarle e poi ricrearle.
bye :o)