Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Lors de l'ajout de la clé primaire sur PARAMSLONG, impossible de définir la contrainte primary key

0000002708     -      29/06/2017

Lors de la vérification de structure (Outils avancés), Mercator peut demander d'installer une clé primaire manquante sur PARAMSLONG. Il propose alors ce script SQL : 

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

L'erreur suivante peut être rencontrée :

Error number : 8111
Impossible de définir la contrainte PRIMARY KEY dans une colonne acceptant les valeurs NULL de la table 'PARAMSLONG'. Impossible de créer la contrainte.

Dans ce cas, il faut exécuter au préalable cette commande SQL : 

exec SP_ALTER_COLUMN 'PARAMSLONG','TYPE','char(10) not null'

 

Ce message peut également apparaître pour la table VOUCHER (à propos du champ APPL).
Dans ce cas, la commande SQL à exécuter au préalable est :

exec SP_ALTER_COLUMN 'VOUCHER','APPL','char(10) not null'


Mots clés : vérifier structure