UNIQUE ierobežojumi Microsoft SQL Server

Priekšrocības, izmantojot UNIQUE ierobežojumus virs galvenajiem galvenajiem ierobežojumiem

Radot UNIQUE ierobežojumu, SQL Server administratori norāda, ka slejā var nebūt dublējošas vērtības. Izveidojot jaunu UNIQUE ierobežojumu, SQL Server pārbauda attiecīgo sleju, lai noteiktu, vai tajā ir dublikātu vērtības. Ja tabulā ir jau esošie dublikāti, ierobežojuma izveides komanda neizdodas. Tāpat, ja kolonnā ir kāds ierobežojums, mēģina pievienot vai mainīt datus, kas varētu radīt dublētus, arī neizdodas.

Kāpēc izmantot UNIQUE ierobežojumus

UNIQUE ierobežojums un primārā atslēga gan piesaista unikalitāti, bet ir gadījumi, kad labāka izvēle ir UNIQUE ierobežojums.

UNIQUE ierobežojuma izveide

SQL Server ir daudz veidu, kā jūs varat izveidot neierobežotu ierobežojumu. Ja vēlaties izmantot Transact-SQL, lai esošai tabulai pievienotu UNIQUE ierobežojumu, varat izmantot paziņojumu ALTER TABLE, kā parādīts zemāk:

ALTER TABLE ADD CONSTRAINT UNIQUE ()

Ja vēlaties sadarboties ar SQL Server, izmantojot GUI rīkus, varat arī izveidot UNIQUE ierobežojumu, izmantojot SQL Server Management Studio . Lūk, kā:

  1. Atveriet SQL Server Management Studio .
  2. Paplašiniet datu bāzes mapi Galdi , kur vēlaties izveidot ierobežojumu.
  3. Ar peles labo pogu noklikšķiniet uz tabulas, kurā vēlaties pievienot ierobežojumu, un noklikšķiniet uz Dizains .
  4. Izvēlnē Table Designer noklikšķiniet uz Indexes / Keys .
  5. Dialoglodziņā Indeksi / Atslēgas noklikšķiniet uz Pievienot .
  6. Izvēlieties Unikālo ievadi nolaižamajā sarakstā Veids .

UNIQUE ierobežojumi un UNIQUE indeksi

Ir bijis zināms neskaidrības par atšķirību starp UNIQUE ierobežojumu un UNIQUE indeksu. Kamēr jūs varat izmantot dažādas Transact-SQL komandas, lai tās izveidotu (ALTER TABLE ... ADD CONSTRAINT par ierobežojumiem un CREATE UNIQUE INDEX indeksiem), tiem visvairāk ir tāds pats efekts. Faktiski, kad jūs izveidojat UNIQUE ierobežojumu, tas faktiski izveido UNIQUE indeksu uz galda. Tomēr ir svarīgi atzīmēt, ka pastāv vairākas atšķirības: