Pochopení referenční integrity v SQL Server
Referenční integrita je schopnost databáze zajistit, aby vztahy mezi tabulkami byly konzistentní a přesné. Znamená to, že pokud jedna tabulka obsahuje cizí klíč, který odkazuje na jinou tabulku, pak data v nadřazené tabulce musí existovat v podřízené tabulce. Sloupec "ID zaměstnance" tabulky "Manažeři". Pokud zaměstnanec nemá manažera, pole ManagerID v tabulce Zaměstnanci bude mít hodnotu null. Pokud manažer v tabulce Manažeři neexistuje, pole Číslo Zaměstnance v tabulce Manažeři bude mít hodnotu null. Pomáhá také prosazovat obchodní pravidla a předcházet chybám, jako je pokus přiřadit manažera zaměstnanci, který neexistuje.
Na serveru SQL Server lze vynutit referenční integritu pomocí cizích klíčů a omezení. Cizí klíč je sloupec v tabulce, který odkazuje na primární klíč jiné tabulky. Omezení je pravidlo, které definuje vztahy mezi tabulkami. Omezení cizího klíče může být například definováno jako „ID zaměstnance v části Zaměstnanci odkazuje na ID manažera v části Manažer“. Toto omezení by zajistilo, že každý zaměstnanec má platného manažera a že žádný manažer neexistuje bez zaměstnance.
Referenční integritu lze vynutit na úrovni databáze nebo na úrovni aplikace. Na úrovni databáze poskytuje SQL Server funkce, jako jsou omezení a spouštěče k vynucení referenční integrity. Na aplikační úrovni mohou vývojáři používat osvědčené postupy vývoje softwaru, jako je zapouzdření a dědění, aby zajistili konzistenci dat a prosadili obchodní pravidla.