sql >> Database >  >> RDS >> Sqlserver

Kan geen index maken vanwege een duplicaat dat niet bestaat?

Het is niet zo dat de index al bestaat, maar dat er dubbele waarden zijn van de TopicShortName veld in de tabel zelf. Volgens de foutmelding is de dubbele waarde een lege string (het kan gewoon een facet van het posten zijn, denk ik). Dergelijke duplicaten voorkomen het aanmaken van een UNIQUE index.

U kunt een zoekopdracht uitvoeren om te bevestigen dat u een duplicaat heeft:

SELECT
    TopicShortName,
    COUNT(*)
FROM
    DimMeasureTopic
GROUP BY
    TopicShortName
HAVING
    COUNT(*) > 1

Vermoedelijk zijn de gegevens in de andere database anders en zijn de duplicaten niet aanwezig.



  1. Hoe kunnen we controleren of die tabel index heeft of niet?

  2. Moet ik hstore gebruiken in vernieuwd datamodel?

  3. Een extra kolomwaarde toevoegen met INSERT ... SELECT in MySQL

  4. Decimaalveld converteert nul naar 0E-10