Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Eliminare record doppi in Access
mercoledì 24 ottobre 2007 - 17.16
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
jacques
Profilo
| Newbie
3
messaggi | Data Invio:
mer 24 ott 2007 - 17:16
sara' gia' stato chiesto mille volte,
ho cercato un po' ma non l'ho trovato
quando aggiorno una mia tabella,
ogni tanto di nuovo una riga che c'e' già,
e io devo eliminarla
come faccio in Access a farlo,
controllando l'intera tabella
e cancellando i doppioni?
e se ho un ID univoco,
l'importazione del doppio mi crea una riga uguale con solo ID diverso,
riesco a toglierla senza sfalsare il contatore?
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 24 ott 2007 - 20:09
>quando aggiorno una mia tabella,
>ogni tanto di nuovo una riga che c'e' già,
>e io devo eliminarla
>
>come faccio in Access a farlo,
>controllando l'intera tabella
>e cancellando i doppioni?
Tutto sta nel capire cosa è per te "una riga uguale"
Se esiste già una riga che tu consideri uguale, per quale motivo devi eliminarla per reinserirla subito dopo?
>e se ho un ID univoco,
>l'importazione del doppio mi crea una riga uguale con solo ID
>diverso,
>riesco a toglierla senza sfalsare il contatore?
No, ogni INSERT genererà un nuovo valore della colonna autonumber.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
paolosavona
Profilo
| Newbie
6
messaggi | Data Invio:
gio 25 ott 2007 - 07:31
Ciao,
e grazie per i primi spunti.
>Tutto sta nel capire cosa è per te "una riga uguale"
>Se esiste già una riga che tu consideri uguale, per quale motivo
>devi eliminarla per reinserirla subito dopo?
Il mio problema e' il seguente:
Ho un grosso file di eventi,
che proviene da uno scarico quotidiano da un sito web,
ogni evento e' una riga, e si compone di data, partecipanti, interazioni...
Ogni giorno scarico un nuovo pezzetto,
pero' non ho modo di far si' che esso non contenga righe che già ho nel mio file,
mentre a me serve che ogni record gia' esistente (tutti i campi uguali)
NON venga di nuovo accodato.
Questo è cio' che intendo per "riga uguale".
Quindi:
- file storico ;
- file update, stessa struttura ma alcune righe comuni con lo storico e alcune righe nuove.
Target: accodare, con numerazione corretta, solo le righe nuove, scartando le preesistenti.
Grazie, buona giornata.
Paolo
>
>>e se ho un ID univoco,
>>l'importazione del doppio mi crea una riga uguale con solo ID
>>diverso,
>>riesco a toglierla senza sfalsare il contatore?
>No, ogni INSERT genererà un nuovo valore della colonna autonumber.
>
>Ciao!
>--
>Lorenzo Benaglia
>Microsoft MVP - SQL Server
>
http://blogs.dotnethell.it/lorenzo/
>
http://italy.mvps.org
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 25 ott 2007 - 08:52
>Quindi:
>
>- file storico ;
>
>- file update, stessa struttura ma alcune righe comuni con lo
>storico e alcune righe nuove.
>
>Target: accodare, con numerazione corretta, solo le righe nuove,
>scartando le preesistenti.
Ciao Paolo,
Il discorso non mi è ancora chiaro del tutto, nel tuo schemino manca il database Access.
Il file storico ogni quanto lo importi nel db?
Il file di update invece mi sembra di aver capito che lo importi tutti i giorni, corretto?
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
paolosavona
Profilo
| Newbie
6
messaggi | Data Invio:
gio 25 ott 2007 - 11:33
Ciao,
e grazie per la domanda
(come si dice in TV...).
Il file storico l'ho creato una prima volta importando tutto l'elenco dati del sito,
e ora e' la mia base di dati,
alla quale devo appendere ogni giorno un certo numero di righe nuove.
Queste righe "nuove", pero',
non ho modo di sapere se gia' ci sono o no
(perche' ci sono eventi a pari data, alcuni conclusi alcuni sospesi
difficili da separare, quindi riesco solo a importare un blocco di righe,
diciamo i 3 giorni indietro o giu' di li' ...).
Fatta l'importazione del giorno,
avrei bisogno di eliminare le righe doppie,
dopo di che aggiornare il file storico con le righe davvero nuove,
con numerazione coerente.
Spero di essere stato piu' chiaro,
e ri-grazie fin d'ora.
Paolo
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 25 ott 2007 - 12:44
455_Importazioni.zip
>Il file storico l'ho creato una prima volta importando tutto
>l'elenco dati del sito,
>e ora e' la mia base di dati,
>alla quale devo appendere ogni giorno un certo numero di righe
>nuove.
Ah OK, ora ho capito
Il suggerimento che ti posso dare consiste nell'importare il file di update giornaliero in una tabella di appoggio, infischiandotene del fatto che alcune righe possono essere già presenti nella tabella di storico.
A questo punto eseguendo una OUTER JOIN potrai importare *solo* le righe nuove.
Al termine dell'importazione andrai a svuotare la tabella di appoggio, pronto per importare i dati del giorno successivo.
Ti allego un file mdb con la tabella di storico (Students), la tabella con i dati giornalieri (StudentsUpdate) e la query di importazione (qryAddStudents).
>e ri-grazie fin d'ora.
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !