U bevindt zich nu op een technische pagina over de software Mercator. Deze pagina bevat specifieke informatie die bestemd is voor professionals van de software Mercator. Wenst u naar algemenere informatie over Mercator door te gaan?


   Deze vraag niet meer stellen

Bij het toevoegen van een primary key op de tabel PARAMS, is het onmogelijk om de constraint van de primary key te definiƫren

0000002709     -      29-06-2017

Bij de verificatie van de structuur (Geavanceerde tools), kan Mercator vragen om een primary key te installeren die ontbreekt op PARAMS. Hij stelt dan volgend script voor:

ALTER TABLE [dbo].[PARAMS] 
    ADD CONSTRAINT [PARAMS_id] PRIMARY KEY CLUSTERED (TYPE) 
    WITH (ALLOW_PAGE_LOCKS = ON, ALLOW_ROW_LOCKS = ON, PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF)

De volgende fout kan gegenereerd worden:

Error number : 1505
Impossible de définir la contrainte PRIMARY KEY dans une colonne de la table 'PARAMS' contenant une clé dupliquée. Impossible de créer la contrainte.

In dit geval moet men deze SQL-query op voorhand uitvoeren:

select type,min(valeur) as valeur into #params_tmp from params group by type
delete from params insert into params(type,valeur) select type,valeur from #params_tmp 
drop table #params_tmp

 

Sleutelwoorden: create unique index, duplicate key, structuur controleren