TurboSQL Guide

CREATE PROCEDURE Statement

Top  Previous  Next

Dieses Feature ist nur in TurboDB Managed verfügbar.

Syntax

CREATE PROCEDURE function_name([:parameter_name data_type]...) AS statement

CREATE PROCEDURE function_name([:parameter_name data_type]...) AS BEGIN statement [statement]... END

CREATE PROCEDURE function_name([:parameter_name data_type]...) AS EXTERNAL NAME [namespace_name.class_name].method_name,assembly_name

Beschreibung

namespace_name.class_name bezeichnet eine öffentliche (public) Klasse der Assembly.

method_name bezeichnet den Namen einer statischen public Funktion der Assembly. Die Funktion muss öffentlich (public) und nicht überladen (overloaded) sein . Die Parameter müssen mit denen der TurboSQL Funktion übereinstimmen (siehe "Parameter mit .NET  Assemblies austauschen").

Beispiel

CREATE PROCEDURE Insert(:LastName WCHAR(40), :Salary INTEGER, :Department WCHAR(40) AS BEGIN
       INSERT INTO Departments ([Name]) VALUES(:Department)
       INSERT INTO Employees (LastName, Salary, Department) VALUES(:LastName, :Salary, :Department)
END

Das folgende Beispiel setzt die öffentliche, statische Methode Send der öffentlichen Klasse SmtpClient im Namensraum (namespace) Email der Assembly Email.dll voraus.Die Assembly muss im Verzeichnis der Datenbankdatei (tdbd) untergebracht sein.

CREATE PROCEDURE SendEmail(:Address WCHAR(100), :Subject WCHAR(100), :Content WCHAR(100)) AS
EXTERNAL NAME [Email.SmtpClient].Send,Email