De uniciteit van waarden uit een unieke kolom garanderen voor niet lege-waarden

0000002712     -      29-06-2017

Het voorbeeld hieronder beschreven toont hoe je de uniciteit van waarden voor de kolom S_CLE3 uit de tabel STOCK kan verzekeren. Deze uniciteit mag enkel en alleen bewerkt worden voor items die een niet-lege waarde in de kolom hebben. Met andere woorden, S_CLE3 moet ofwel leeg ofwel uniek zijn.

Standaard biedt Mercator deze optie:

DEDOUB_SC3 (PARAMS)
Artikelen ontdubbelen op basis van S_CLE3.
Indien bij de creatie van een nieuw artikel gemerkt wordt dat er reeds een artikel met deze sleutel bestaat zal er een waarschuwing gegeven worden.
Informatiebestanden / Ontdubbelen stock sleutel 3

maar indien deze optie op "JA" staat is dit niet blokerend, bovendien is dit niet opgenomen in de functionaliteiten van Mercator (bijvoorbeeld: Import Excel) of externe applicaties.

Om deze stricte conditie te voldoen, volstaat het om deze unieke index toe te voegen en te filteren op de tabel STOCK.

CREATE UNIQUE NONCLUSTERED INDEX S_CLE3_UNIQUE_OR_EMPTY_IN_STOCK ON dbo.STOCK(S_CLE3) where s_cle3<>''