Problem mit dem SQL-Abfrageskript mit dem DatumsformatHallo,
Ich bin ein Fan von JSL. Ich mische ein Skript mit einer SQL-Abfrage. Meine Anfrage ist durch zwei Datumsangaben bedingt. Aber wenn ich es ausführe, funktioniert die Zuweisung meines Datums nicht. Das Feld mit dem Datum ist _TIMESTAMP und das Format des Datums ist jjjj-mm-tt hh:mm:ss. Wenn ich es mit den Daten in der Abfrage ausführe, funktioniert es natürlich. Ich brauche dieses Skript, weil ich für zahlreiche Tabellen dasselbe tun muss.
Hier ist das Skript:
RunScript= Expr(
sql_statement=evalinsert("SELECT * FROM table_SQL WHERE _TIMESTAMP >= '^start^' AND _TIMESTAMP < '^end^' ");
start=(2021-12-15 00:00:00);
end=(2021-12-18 00:00:00);
Open Database("Driver=§§§§§§§§§§§§§§§§§§§§§§§§",
sql_statement,"table_name_1"));Ich habe die SQL-Verbindungsparameter geblendet.
Mit freundlichen Grüße,
Automatisierung und SkripterstellungDatenzugriffMassenanpassungWindowsBetreff: SQL-Abfrageskriptproblem mit DatumsformatIch danke Ihnen sehr für Ihre Antwort. Es gibt gut zurück, was ich will.
Grüße
Betreff: SQL-Abfrageskriptproblem mit Datumsformatsql_statement gibt einen Fehler aus, wenn Sie vor der eval insert-Anweisung nicht Start und Ende definiert haben. Ändern Sie außerdem Start und Ende in Zeichenfolgen
Names Default To Here(1);
//this will error because it is before start and end variable definition
//sql_statement=evalinsert("SELECT * FROM table_SQL WHERE _TIMESTAMP >= '^start^' AND _TIMESTAMP < '^end^' ");
start = "2021-12-15 00:00:00";
end = "2021-12-18 00:00:00";
sql_statement=evalinsert("SELECT * FROM table_SQL WHERE _TIMESTAMP >= '^start^' AND _TIMESTAMP < '^end^' ");
show(sql_statement);
//sql_statement = "SELECT * FROM table_SQL WHERE _TIMESTAMP >= '2021-12-15 00:00:00' AND _TIMESTAMP < '2021-12-18 00:00:00' ";Betreff: SQL-Abfrageskriptproblem mit DatumsformatWillkommen in der Community @Teissduc16 ,
Ein paar kleine Dinge, die helfen könnten:
- Wahrscheinlich möchten Sie Start und Ende definieren, bevor Sie sie in der Zeile eval insert() verwenden.
- Um sicherzustellen, dass das Datum in einem Format angezeigt wird, das SQL versteht, möchten Sie Datumsangaben wahrscheinlich als Zeichenfolgen formatieren, bevor Sie sie in die SQL-Anweisung einfügen
Hier ist ein Beispiel:
start=("2021-12-15 00:00:00");
end=format(date dmy(1,1,2021), "yyyy-mm-dd hh:mm:ss");
sql_statement=evalinsert("SELECT * FROM table_SQL WHERE _TIMESTAMP >= '^start^' AND _TIMESTAMP < '^end^' ");
show(sql_statement);