Kurz gesagt sind dies Prozeduren, welche in einer vom Datenbank-Hersteller spezifizierten Sprache (oftmals wie z.B. bei "Oracle" an Pascal angelehnt) mit in der Datenbank gespeichert werden.
In diesen Prozeduren kannst Du im Rahmen dessen, was die Integrationsbedingungen zulassen, umfangreiche Datenänderungen vornehmen. (
Wenn man jedoch wie bei mySQL erst gar keine Integrationsbedingungen definieren kann, hat man natürlich um so mehr Möglkichkeiten ) Beispielsweise könntest Du unter entsprechender Vergabe von Benutzer-Rechten die Datenbank so kapseln, dass Schreibzugriffe von Aussen nur noch über Deine Prozeduren möglich sind. Die Bandbreite der möglichen Anwendungsfälle ist gross. SPs sind eine tolles Werkzeug, welches ich i.A. nicht missen möchte.
Und ein Trigger ist im Groben nichts anderes als eine SP, welche zu einem festgelegten Zeitpunkt ausgeführt wird; beispielsweise immer vor oder nach dem Einfügen, Aktualisieren oder Löschen eines Datensatzes.
Grüße,
Daniel
Daniel R. Wolf