Zum Hauptinhalt springen

DeleteBuilder Klasse

Über die DeleteBuilder Klasse können DELETE SQL-Statements erstellt werden. Durch das sog. Method-Chaining kann mit einer Zeile ein komplettes Statement erstellt werden.

const update = DeleteBuilder.from("costcenter");
tipp

Alle Funktionen sind hier beschrieben.

Ausgabe als String

context.enableModules();
const { DeleteBuilder } = require("ou.sp.DeleteBuilder");

context.returnValue = DeleteBuilder.from("costcenter").where("costcenter = 'K30101'").toSQL();

Ausgabe:

DELETE FROM costcenter WHERE costcenter = 'K30101'

Ausführen eines Statements

context.enableModules();
const { DeleteBuilder } = require("ou.sp.DeleteBuilder");

const dbUser = util.getEnvironment("OUSP_DATABASE_USER");
const dbPassword = util.getEnvironment("OUSP_DATABASE_PASSWORD");
const db = new DBConnection("odbc", "ousp", dbUser, dbPassword);

try {
if (db.getLastError()) {
throw new Error("DBConnection error: " + db.getLastError());
}

const updateStatement = DeleteBuilder.table("costcenter")
.set("costcenterName", "GmbH Entwicklung")
.where("costcenter = 'K30101'")
.toSQL();

const result = db.executeStatement(updateStatement);
if (!result && db.getLastError()) {
throw new Error("DBConnection error: " + db.getLastError());
}

// Code hier
context.returnValue = "Done";
} catch (error) {
context.errorMessage = error.message;
context.returnValue = -1;
} finally {
db?.close();
}