Select the product you need help with
Come rimuovere le righe duplicate da una tabella in SQL ServerIdentificativo articolo: 139444 - Visualizza i prodotti a cui si riferisce l?articolo. SommarioTabelle di Microsoft SQL Server non devono contenere righe duplicate, né le chiavi primarie non univoche. Per brevità, si farà spesso riferimento alle chiavi primarie come "chiave" o "Chiave" in questo articolo, ma questo verrà sempre indicare "chiave primaria". PKs duplicati sono una violazione di integrità di entità e deve essere consentito in un sistema relazionale. SQL Server dispone di diversi meccanismi per applicare l'integrità di entità, inclusi gli indici, vincoli UNIQUE, vincoli PRIMARY KEY e trigger. Nonostante ciò, chiavi primarie duplicate possono verificarsi circostanze insolite, e in tal caso deve essere eliminate. Un metodo che può verificarsi è se PKs duplicati presenti in dati non relazionali esterne di SQL Server e importato i dati mentre l'univocità della chiave non è che vengano applicato. In alternativa, che può verificarsi è tramite un errore di progettazione di database, ad esempio non applicare l'integrità di entità in ogni tabella. PKs duplicati sono spesso notato quando si tenta di creare un indice univoco, che verrà interrotto se vengono rilevate chiavi duplicate. Questo messaggio è: Msg 1505, livello 16, stato 1 Crea indice univoco interrotta nella chiave duplicati. Msg 1505, livello 16, stato 1 CREATE UNIQUE INDEX terminata perché una chiave duplicata è stata trovata per il nome di oggetto ' %. * ls 'e nome di indice' %. * ls'. Il valore di chiave duplicato è % 1!. InformazioniIn questo esempio, verrà utilizzato nella tabella riportata di seguito con valori di chiave duplicati. In questa tabella la chiave primaria è le due colonne (col1, col2). È Impossibile creare un indice univoco o un vincolo PRIMARY KEY perché due righe hanno PKs duplicati. Questa procedura viene illustrato come identificare e rimuovere i duplicati. Riduci questa tabella
Se sono presenti solo alcuni set di valori di chiave duplicati, la procedura migliore consiste nell'eliminare questi manualmente su base individuale. Ad esempio: Prima di eliminare le righe, è necessario verificare che l'intera riga è duplicato. Sebbene improbabile, è possibile che i valori di chiave sono duplicati, ma la riga nel suo complesso non. Un esempio potrebbe essere una tabella con Social Security Number come chiave primaria, e verificano due diversi utenti (o righe) con lo stesso numero, ciascuno con attributi univoci. In tal caso qualsiasi malfunzionamento causato la chiave duplicata può essere anche causato validi dati univoci da inserire nella riga. Questi dati devono essere copiati e salvato per la riconciliazione Studio e le possibili prima di eliminare i dati. Se esistono molti insiemi distinti di valori di chiave duplicati nella tabella, potrebbe essere troppo lunga per rimuoverli individualmente. In questo caso è possibile utilizzare la procedura seguente:
ProprietàIdentificativo articolo: 139444 - Ultima modifica: mercoledì 23 novembre 2005 - Revisione: 4.2 Le informazioni in questo articolo si applicano a:
Traduzione automatica articoli Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica. Clicca qui per visualizzare la versione originale in inglese dell?articolo: 139444
(http://support.microsoft.com/kb/139444/en-us/
)
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO. | Traduzione articoli
|




Torna all'inizio








