Sdílet prostřednictvím


Vytvoření heterogenního spojení mezi SQL Serverem & Active Directory

Všichni zaměstnanci společnosti Fabrikam se kontrolují každých šest měsíců. Hodnocení kontrol se ukládají v databázi lidských zdrojů na SQL Serveru. K vytvoření pohledu na tato data musí Joe Worden, správce společnosti, nejprve vytvořit tabulku hodnocení výkonu zaměstnanců.

Joe v Analyzátoru dotazů SQL vytvoří tabulku s názvem EMP_REVIEW, která bude obsahovat tři sloupce, ve kterých bude obsahovat jméno zaměstnance, datum revize a hodnocení, které zaměstnanec obdržel.

CREATE TABLE EMP_REVIEW
(
userName varChar(40),
reviewDate datetime,
rating decimal 
)

Joe pak může vložit několik záznamů.

INSERT EMP_REVIEW VALUES('Julie Adam', '2/15/1999', 4 )
INSERT EMP_REVIEW VALUES('Julie Bankert', '7/15/1999', 5 )
INSERT EMP_REVIEW VALUES('Chris Gray', '2/15/1999', 3 )
INSERT EMP_REVIEW VALUES('Chris Gray', '7/15/1999', 4 )

Joe teď může připojit objekty uživatele služby Active Directory k tabulce SQL Serveru.

V tomto příkladu příkaz SELECT obsahuje seznam dat, která budou získána z adresářové služby a SQL Serveru. Příkaz FROM obsahuje název propojeného adresářového serveru, ze kterého budou tyto informace získány, v tomto případě viewADUsers. Příkaz WHERE poskytuje podmínky hledání. V tomto příkladu vyhledává podle názvu v adresářové službě, který je nastavený na uživatelské jméno SQL zadané v předchozí úloze.

SELECT ADsPath, userName, title, ReviewDate, Rating 
FROM EMP_REVIEW, viewADUsers
WHERE userName = Name

Předchozí příkaz získá výsledek z SQL Serveru i služby Active Directory. AdsPath a název jsou ze služby Active Directory, zatímco userName, ReviewDate a Rating jsou z tabulky SQL. Může dokonce vytvořit další zobrazení pro toto spojení.

CREATE VIEW reviewReport
AS
SELECT ADsPath, userName, title, ReviewDate, Rating 
FROM EMP_REVIEW, viewADUsers
WHERE userName = Name
GO
SELECT * FROM reviewReport