Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Vonatkozik a következőkre: SQL Server 2016 (13.x) és későbbi verziók
Azure SQL Database
Azure SQL Managed Instance
SQL database in Microsoft Fabric
Az SQL Serverben egyedi korlátozást hozhat létre az SQL Server Management Studióval vagy Transact-SQL, hogy ne legyenek ismétlődő értékek olyan oszlopokban, amelyek nem vesznek részt az elsődleges kulcsban. Az egyedi kényszerek létrehozása automatikusan létrehoz egy megfelelő egyedi indexet.
Note
Az Azure Synapse Analytics egyedi korlátairól további információért lásd: Elsődleges kulcs, idegen kulcs és egyedi kulcs az Azure Synapse Analytics.
engedélyek
Módosítási engedély szükséges a táblához.
az SQL Server Management Studio (SSMS) használata
Egyedi kényszer létrehozása az SSMS használatával
Az Objektumkezelőkattintson a jobb gombbal arra a táblára, amelyhez egyedi korlátozást szeretne hozzáadni, és válassza a Tervezéslehetőséget.
A Táblatervező menüben válassza Indexek/Kulcsoklehetőséget.
Az Indexek/Kulcsok párbeszédpanelen válassza a Hozzáadáslehetőséget.
Az Általánosalatti rácson válassza a Típus lehetőséget, majd a tulajdonság melletti legördülő listából válassza az Egyedi kulcs lehetőséget, végül válassza a Bezáráslehetőséget.
A Fájl menüben válassza a Mentés táblanévparancsot.
Transact-SQL használata
Egyedi kényszer létrehozása Transact-SQL használatával
Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.
A Standard sávon válassza Új lekérdezéslehetőséget.
Másolja és illessze be a következő példát a lekérdezési ablakba, és válassza a Végrehajtáslehetőséget. A példa létrehozza a táblát
TransactionHistoryArchive4, és létrehoz egy egyedi korlátozást aTransactionIDoszlopra.USE AdventureWorks2022; GO CREATE TABLE Production.TransactionHistoryArchive4 ( TransactionID int NOT NULL, CONSTRAINT AK_TransactionID UNIQUE(TransactionID) ); GO
Egyedi korlátozás létrehozása meglévő táblán
Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.
A Standard sávon válassza Új lekérdezéslehetőséget.
Másolja és illessze be a következő példát a lekérdezési ablakba, és válassza a Végrehajtáslehetőséget. A példa egyedi korlátozást hoz létre a tábla
PasswordHashPasswordSaltésPerson.Passwordoszlopaiban.USE AdventureWorks2022; GO ALTER TABLE Person.Password ADD CONSTRAINT AK_Password UNIQUE (PasswordHash, PasswordSalt); GO
Egyedi korlátozás létrehozása új táblán
Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.
A Standard sávon válassza Új lekérdezéslehetőséget.
Másolja és illessze be a következő példát a lekérdezési ablakba, és válassza a Végrehajtáslehetőséget. A példa létrehoz egy táblát, és egyedi korlátozást határoz meg a
TransactionIDoszlopon.USE AdventureWorks2022; GO CREATE TABLE Production.TransactionHistoryArchive2 ( TransactionID int NOT NULL, CONSTRAINT AK_TransactionID UNIQUE(TransactionID) ); GO
Egyedi kényszer létrehozása egy null értékeket is tartalmazó oszlopon
Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.
A Standard sávon válassza Új lekérdezéslehetőséget.
Másolja és illessze be a következő példát a lekérdezési ablakba, és válassza a Végrehajtáslehetőséget. A példa egy szűrt egyedi kényszert hoz létre a
CREATE UNIQUE INDEXszintaxis használatával, amely csak a nemNULLértékek egyediségét kényszeríti ki.USE AdventureWorks2022; GO CREATE UNIQUE INDEX UQ_AdventureWorksDWBuildVersion ON dbo.AdventureWorksDWBuildVersion (DBVersion) WHERE (DBVersion IS NOT NULL); GO