Fürtözött és nem fürtözött indexek létrehozása az SQL Server szolgáltatásban



Próbálja Ki A Műszerünket A Problémák Kiküszöbölésére

Egy SQL Server esetében kétféle index létezik; Fürtözött és nem fürtözött indexek. A fürtözött indexek és a nem fürtözött indexek fizikai szerkezete azonos. Sőt, mindkettőt B-Tree struktúrában tárolják az SQL Serverben.



Fürtözött index:

A fürtözött lista egy bizonyos típusú index, amely átrendezi a rekordok fizikai tárolását a táblázatban. Az SQL Serveren belül indexeket használnak az adatbázis-műveletek felgyorsítására, ami nagy teljesítményhez vezet. A táblának tehát csak egy fürtözött indexe lehet, amelyet általában az elsődleges kulcson végeznek. Egy csoportosított index levélcsomópontjai tartalmazzák „Adatoldalak”. Egy táblázatnak csak egy fürtözött indexe lehet.



A jobb megértés érdekében hozzunk létre egy fürtözött indexet. Először is létre kell hoznunk egy adatbázist.



Adatbázis létrehozása

Adatbázis létrehozása érdekében. Kattintson a jobb gombbal a gombra „Adatbázisok” az objektumkezelőben, és válassza a lehetőséget „Új adatbázis” választási lehetőség. Írja be az adatbázis nevét, és kattintson az OK gombra. Az adatbázist az alábbi ábra szerint hoztuk létre.

Táblázat létrehozása a tervnézet segítségével

Most létrehozunk egy nevű táblázatot 'Munkavállaló' az elsődleges kulccsal a tervezési nézet használatával. Az alábbi képen láthatjuk, hogy elsősorban az „ID” nevű fájlhoz rendeltük, és nem készítettünk indexet a táblán.



„Alkalmazott” nevű tábla létrehozása, amelynek elsődleges kulcsa az azonosító

A következő kód végrehajtásával táblázatot is létrehozhat.

[Teszt] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo]. [Alkalmazott] ([ID] [int] IDENTITY (1,1) NOT NULL, [Dep_ID] [int] NULL, [Név] [ varchar] (200) NULL, [email] [varchar] (250) NULL, [város] [varchar] (250) NULL, [cím] [varchar] (500) NULL, CONSTRAINT [Elsődleges_Kulcs_ID] ELSŐDLEGES KULCS ([ID) ] ASC) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY] GO

A kimenet a következő lesz.

„Alkalmazott” nevű tábla létrehozása, amelynek elsődleges kulcsa az azonosító

A fenti kód létrehozott egy nevű táblázatot 'Munkavállaló' ID mezővel, egyedi azonosító, mint elsődleges kulcs. Ebben a táblázatban az elsődleges kulcs korlátai miatt egy fürtözött index automatikusan létrejön az oszlopazonosítón. Ha egy táblázat összes indexét meg akarja tekinteni, futtassa a tárolt eljárást „Sp_helpindex”. Hajtsa végre a következő kódot az összes index megtekintéséhez a megnevezett táblában 'Munkavállaló'. Ez a tárolási eljárás egy táblázat nevét veszi bemeneti paraméterként.

HASZNÁLjon tesztet EXECUTE sp_helpindex alkalmazott

A kimenet a következő lesz.

Az „sp_helpindex” az összes indexet megjeleníti az alkalmazottak táblázatában.

A táblaindexek megtekintésének másik módja a „Asztalok” tárgykutatóban. Válassza ki a táblázatot, és töltse ki. Az indexek mappában láthatja az adott táblázathoz kapcsolódó összes indexet, az alábbi ábrán látható módon.

Az összes index megtekintése a táblázatban

Mivel ez a fürtözött index, az index logikai és fizikai sorrendje megegyezik. Ez azt jelenti, hogy ha egy rekord azonosítója 3, akkor a táblázat harmadik sorában tárolódik. Hasonlóképpen, ha az ötödik rekord azonosítója 6, akkor az 5-ben tárolódikthaz asztal helye. A rekordok sorrendjének megértéséhez a következő parancsfájlt kell végrehajtania.

HASZNÁLJA [teszt] GO SET IDENTITY_INSERT [dbo]. [Alkalmazott] ON INSERT [dbo]. [Alkalmazott] ([ID], [Dep_ID], [Név], [e-mail], [város], [cím]) ÉRTÉKEK ( 8., 6., N'Humbaerto Acevedo