A legfontosabb legfontosabb kényszereket érintő UNIQUE korlátok használata előnyei
UNIQUE kényszer létrehozásával az SQL Server rendszergazdái meghatároznak egy oszlopot, amely nem tartalmaz dupla értéket. Amikor létrehoz egy új UNIQUE korlátozást, az SQL Server ellenőrzi a kérdéses oszlopot annak megállapítására, hogy tartalmaz-e duplikált értékeket. Ha a táblázat meglévő másolatokat tartalmaz, akkor a kényszerítő létrehozási parancs sikertelen. Hasonlóképpen, ha egy oszlopra UNIQUE kényszerhelyzet van, megpróbálja hozzáadni vagy módosítani azokat a adatokat, amelyek duplikátumokat okozhatnak.
Miért használjon UNIQUE kényszereket?
Az UNIQUE kényszer és az elsődleges kulcs mindkettő az egyediséget érvényesíti, de vannak olyan esetek, amikor a UNIQUE kényszer a jobb választás.
- Használjon UNIQUE kényszert, ha több korlátot szeretne egy táblázathoz. Csak egy elsődleges kulcsot csatolhat a táblához.
- Használjon UNIQUE kényszert, ha egy oszlop megengedi null értékeket. Az elsődleges kulcskorlátozásokat csak olyan oszlopokhoz lehet csatolni, amelyek nem engedélyezik az nullértékeket.
UNIQUE korlátozás létrehozása
Sokféleképpen hozhat létre UNIQUE kényszert az SQL Serverben. Ha a Transact-SQL használatával UNIQUE kényszert kíván hozzáadni egy meglévő táblához, használja az ALTER TABLE utasítást az alábbiak szerint:
ALTER TÁBLÁZAT ADD CONSTRAINT UNIQUE ()Ha jobban szeretne együttműködni az SQL Server segítségével GUI eszközök, akkor is hozzon létre egy UNIQUE korlátot az SQL Server Management Studio . Itt van, hogyan:
- Nyissa meg az SQL Server Management Studio alkalmazást .
- Bontsa ki az adatbázis Táblázatok mappáját, ahová a kényszert kívánja létrehozni.
- Kattintson a jobb egérgombbal az asztalra, ahová a kényszert hozzá kívánja adni, majd kattintson a Tervezés parancsra.
- A Táblagép menüben kattintson az Indexek / billentyűk elemre.
- Az Indexek / Kulcsok párbeszédpanelen kattintson a Hozzáadás gombra.
- Válassza az Egyedi kulcsot a Típus legördülő listában.
UNIQUE Constraints vs UNIQUE indexek
Némi zavart okozott az UNIQUE kényszer és az UNIQUE index között. Bár különböző Transact-SQL parancsokat használhat fel azok létrehozásához (ALTER TABLE ... ADD CONSTRAINT for constraints és CREATE UNIQUE INDEX indexekhez), ugyanolyan hatásúak, mint a legtöbb esetben. Valójában, ha UNIQUE kényszert hoz létre, valójában egy UNIQUE indexet hoz létre az asztalon. Fontos azonban megjegyezni, hogy számos különbség van:
- Index létrehozásakor további lehetőségeket adhat hozzá a létrehozási parancshoz.
- Az UNIQUE korlátozás hatálya alá tartozó oszlop idegen kulcsként használható .