Bij het toevoegen van de Primaire sleutel op PARAMSLONG, is het onmogelijk om de constraint van de primaire sleutel te bepalen

0000002708     -      29-06-2017

Bij het verifiëren van de structuur (Geavanceerde Tools), kan Mercator vragen om een primaire sleutel te installeren die ontbreekt op PARAMSLONG. Hij stelt dan volgend SQL-script voor:

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)

De volgende foutmelding kan weergegeven worden:

Error number: 8111
Onmogelijk om de constraint van de primaire sleutel te definiëren in een kolom die nulwaarden accepteert in de tabel 'PARAMSLONG'. Onmogelijk om de constraint aan te maken.

In dit geval, moet men volgend SQL-commando uitvoeren:

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

 

Dit bericht kan ook weergegeven worden voor de tabel VOUCHER (op het veld APPL).
In dit geval moet je volgend SQL-commando uitvoeren:

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


Sleutelwoorden: structuur verifiëren