SQLFILE und Variablen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo Leute,
Ich versuche, mein Skript aufzuräumen. Ich habe in mein Skript eine sehr lange SQL-Abfrage eingebettet, die auf der obersten Ebene lautet:
sqlQuery = „Wählen Sie x aus der Tabelle aus, wobei der Bezeichner =“ || primäridentifizierer ||";"
Ich habe dies in einer externen .sql-Datei gespeichert und dachte, ich könnte die Abfrage bei Bedarf in das Skript laden, um sie auszuwerten.
JMP erkennt nicht, dass es die Variablen in das SQL-Skript einfügen muss
Bitte um Hilfe
Betreff: SQLFILE und Variablen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Etwas wie
primäridentifizierer = 0;
sqltext = Textdatei laden("path.sql");
sqlQuery = replacement(sqltext, "primaryidenttifer", primäridentifizierer);
Alternative,
Speichern ' sqlQuery = „Wählen Sie x aus der Tabelle aus, wobei der Bezeichner =“ || primäridentifizierer ||";" ' in eine .jsl-Datei. Verwenden Sie dann die Include-Anweisung.Durch das Einbinden einer weiteren JSL-Datei werden Variablen zwischen den beiden Skripten übergeben.Achten Sie nur darauf, keine allgemeinen Variablen wie „i“ in for-Schleifen zu überschreiben.
include("path.jsl");
Betreff: SQLFILE und VariablenHier ist ein weiterer Ansatz, der save text file , load text file und evalinsert verwendet. Mit evalinsert umgeben Sie Ihre Variablen mit dem Zirkumflex-Zeichen (^) und es ersetzt die aktuell zugewiesenen Variablenwerte in Ihrem String.
//Speichern Sie die Abfrage in einer Datei mit einem Platzhalter für die Kennung
SQLQuery - Die Abfrage= „Wählen Sie x aus der Tabelle, in der der Bezeichner = ^Primärbezeichner^ ist.“;
Textdatei speichern("c:\temp\myquery.sql",sqlquery );
// Den Inhalt der Textdatei in eine Variable laden
SQLQuery - Die Abfrage= Textdatei laden("c:\temp\myquery.sql");
//Setze den Bezeichner mit evalinsert
Primärkennung= "12345";
SQL-Anweisung= Abonnieren(sqlquery );
drucken(SQL-Anweisung );
„Wählen Sie x aus der Tabelle mit der Kennung = 12345“