4D v16.3

SQL EXECUTE SCRIPT

Home

 
4D v16.3
SQL
SQL EXECUTE SCRIPT

SQL EXECUTE SCRIPT 


 

SQL EXECUTE SCRIPT ( SkriptPfad ; FehlerAktion {; attrName ; attrWert} {; attrName2 ; attrWert2 ; ... ; attrNameN ; attrWertN} ) 
Parameter Typ   Beschreibung
SkriptPfad  Text in Kompletter Pfadname der Datei mit dem auszuführenden SQL Skript
FehlerAktion  Lange Ganzzahl in Auszuführende Aktion bei einem Fehler während der Skript-Ausführung
attrName  Text in Name des zu verwendenden Attributs
attrWert  Text in Wert des Attributs

Der Befehl SQL EXECUTE SCRIPT führt eine Reihe von SQL Anweisungen in der Skript-Datei aus, definiert in SkriptPfad. Dieser Befehl lässt sich nur auf einem lokalen Rechner ausführen (4D lokal oder Serverprozedur auf 4D Server). Er arbeitet mit der aktuellen Datenbank (intern oder externe Datenbank).

Hinweis: Dieser Befehl lässt sich nicht in einer externen Verbindung verwenden, die direkt oder über ODBC geöffnet wird.

Im Parameter SkriptPfad übergeben Sie den kompletten Pfadnamen der Textdatei mit den SQL Anweisungen, die in SkriptPfad ausgeführt werden sollen. Der Pfadname muss in der Syntax des aktuellen Systems ausgedrückt werden. Übergeben Sie einen leeren String ("") in SkriptPfad, erscheint ein Standard Öffnen-Dialog für Dokumente, so dass der Benutzer die auszuführende Skript-Datei auswählen kann.

Hinweis: Die Befehle SQL EXPORT DATABASE und SQL EXPORT SELECTION generieren diese Skript-Datei automatisch.

Mit dem Parameter FehlerAktion können Sie die Funktionsweise des Befehls einstellen, wenn während der Skript-Ausführung ein Fehler auftritt. Übergeben Sie eine der nachfolgenden Konstanten unter dem Thema SQL:

Konstante Typ Wert Kommentar
SQL On error abort Lange Ganzzahl 1 Bei einem Fehler stoppt 4D sofort die Ausführung des Skript.
SQL On error confirm Lange Ganzzahl 2 Bei einem Fehler zeigt 4D ein Dialogfenster, das den Fehler beschreibt und dem Benutzer ermöglicht, die Skript-Ausführung abzubrechen oder weiter auszuführen.
SQL On error continue Lange Ganzzahl 3 Bei einem Fehler ignoriert 4D diesen und fährt mit der Skript-Ausführung fort. 

Die Parameter attrName und attrWert müssen als Paar übergeben werden. Damit geben Sie spezifische Attribute für die Skript-Ausführung an. In der aktuellen 4D Version kann in attrName ein einzelnes Attribut über die nachfolgende Konstante unter dem Thema SQL übergeben werden:

Konstante Typ Wert Kommentar
SQL use access rights Zeichenkette SQL_Use_Access_Rights Dient zur Einschränkung der Zugriffsrechte, die während der Ausführung von SQL Befehlen des Skript gelten sollen. Verwenden Sie dieses Attribut, müssen Sie in attrWert 0 oder 1 verwenden.
  • attrWert = 1: 4D verwendet die Zugriffsrechte des aktuellen 4D Benutzers.
  • attrWert = 0 (oder Attribut nicht angegeben): 4D schränkt den Zugriff nicht ein, es gelten die Designer-Rechte.

Ist das 4D Logbuch aktiviert (über die Selectoren 28 oder 45 des Befehls SET DATABASE PARAMETER), erzeugt jeder ausgeführte SQL Befehl eine Eingabe mit folgender Information:

  • Art des SQL Befehls
  • Anzahl der vom Befehl betroffenen Datensätze
  • Dauer der Befehlsausführung
  • Für jeden gefundenden Fehler:
    • den Fehler-Code
    • den Fehlertext, sofern vorhanden

Wird das Skript korrekt ausgeführt, d.h. ohne Fehler, wird die Systemvariable OK auf 1 gesetzt.
Tritt ein Fehler auf, wird die Systemvariable OK entweder auf 0 oder gemäß dem Parameter FehlerAktion gesetzt:

  • Ist FehlerAktion SQL On error abort (Wert 1), wird OK auf 0 gesetzt.
  • Ist FehlerAktion SQL On error confirm (Wert 2), wird OK auf 0 gesetzt, wenn der Benutzer die Operation stoppt; auf 1, wenn er die Operation fortsetzt.
  • Ist FehlerAktion SQL On error continue (Wert 3), ist die Systemvariable OK immer 1.

Hinweis: Verwenden Sie diesen Befehl für speicherintensive Aktionen wie z.B. umfangreichen Datenimport, können Sie erwägen, den SQL Befehl ALTER DATABASE aufzurufen, um die SQL-Optionen temporär zu deaktivieren.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: SQL
Nummer: 1089

Dieser Befehl ändert die Systemvariable OKIm remote Modus anderes Verhalten

 
GESCHICHTE 

Erstellt: 4D v12

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)