Eine Stored Procedure ist eine Datenbankprozedur in der Lage komplexe Verfahren in großen Datenbankmanagementsystemen auszuführen.

Es ist ein Programm  der in SQL, oder andere SQL stammende  Programmiersprachen, geschrieben wurde, wie z.B.: ASP, ASP.NET, Visual Basic oder anderes.

Es kann, je nach Eigenschaften, in drei dieser folgenden Weisen gekennzeichnet werden:

- Funktionen (sie akzeptieren Eingangs und Ausgangs-Parameter, und geben ein einzelnes Wert zurück);
- Prozeduren ( sie akzeptieren Eingangs und Ausgangs-Parameter, wiedergeben aber keinen Wert zurück);
- Trigger ( die von bestimmten Ereignissen ausgelöst  werden)

Die bedeutendste Vorteile die aus der Nutzung der Stored Procedures stammen, sind folgende:

Dem Client ersparen, komplexe Queries umzuschreiben. Die Prozedur wird zusammengestellt  und in der  selben Datenbank archiviert;  das alles steigert die Leistung und vermeidet einen übertriebenen Info-Wechsel zwischen Client und Server.

Da sie in SQL eigene Versionen geschrieben wurden, und da es sich um regelrechte strukturelle Sprachen handelt, ist es möglich Komplexe Prozeduren auszuführen, die mit der einzigen Nutzung von SQL Queries nicht benutzbar sein würden.

Funktionsbibliotheken zu bewahren, die generell in der Datenbank benutzt werden.

Funktionen ausführen, indem eine unterschiedliche Prozedur aufgerufen wird, ohne die Datenbankstruktur zu kennen oder einfach  einen beschränkten Kenntnis davon zu haben ( dies gestattet dem Administrator einer Datenbank den Vorteil zu haben, nur das Ausführrecht der Stored Procedures zu erteilen und vermeiden Schreibe- und/oder Lese Recht  zuteilen zu müssen).

Es gestattet übrigens eine beachtliche Einsparung der Netz-Ressourcen, eine Einsparung die direkt proportional zur Menge des Kodes das in den Stored Procedures enthalten ist und der Häufigkeit mit der er aufgerufen wird.