Home

Schemabindung

Schemabindung ist ein Begriff aus relationalen Datenbanksystemen, der die Verknüpfung einer Abfrage- oder Funktionsdefinition mit dem Schema der referenzierten Tabellen beschreibt. Durch diese Bindung wird sichergestellt, dass Änderungen am Aufbau der referenzierten Objekte nicht unbeabsichtigt die gebundene Definition beeinflussen. In vielen Systemen, insbesondere in SQL Server, wird diese Bindung durch spezielle Optionen wie WITH SCHEMABINDING realisiert.

In SQL Server gilt SCHEMABINDING als Variante, um Views oder Funktionen fest an die Struktur der Basistabellen

Vorteile der Schemabindung liegen in der verbesserten Zuverlässigkeit der Abhängigkeitsbeziehungen und in bestimmten Optimierungs- bzw. Funktionsszenarien,

Beispiel: CREATE VIEW dbo.VwSales WITH SCHEMABINDING AS SELECT s.SalesOrderID, s.OrderDate FROM dbo.SalesOrder AS s; Dies bindet

zu
binden.
Eine
schema-bound
View
verweist
auf
die
Grundtabellen
mit
expliziten
zwei-
bzw.
dreistufigen
Namen
und
darf
typischerweise
nicht
auf
SELECT
*.
Die
Bindung
verhindert
DDL-Operationen,
die
die
Referenzen
der
gebundenen
Objekte
betreffen,
etwa
das
Löschen
oder
Ändern
von
Spalten,
solange
der
gebundene
Gegenstand
existiert.
Änderungen
an
den
referenzierten
Objekten
müssen
demzufolge
zuerst
am
gebundenen
Objekt
angepasst
oder
dieses
gelöscht
werden.
etwa
der
Möglichkeit,
indexierte
Views
(materialisierte
Views)
zu
erstellen.
Nachteile
bestehen
in
der
eingeschränkten
Flexibilität
bei
DDL-Operationen
an
den
Referenzen
und
dem
zusätzlichen
Verwaltungsaufwand
beim
Ändern
der
Basisstrukturen.
die
View
an
die
Struktur
der
Tabelle
dbo.SalesOrder.
Für
Funktionen
gilt
eine
ähnliche
Syntax
mit
WITH
SCHEMABINDING.