Page Title

Der Wiki wird derzeit überarbeitet: neue URL, neues Design, neue Inhalte!

Benutzer-Werkzeuge

Webseiten-Werkzeuge


mikeurbanplus:dialog:menue_werkzeuge_sql-befehl

Allgemeiner SQL-Befehl

⯇ Zurück zu Menüs und Werkzeuge Wasserversorgung
⯇ Zurück zu Menüs und Werkzeuge Siedlungsentwässerung

Menüpunkt: Werkzeuge > Allgemeiner SQL-Befehl
Handbuch: MIKE+ Model Manager User Guide, section 2.4.7: Tools Menu

Dieser Artikel wird momentan überarbeitet. Wichtige Teile können fehlen oder sogar falsch sein. Bitte diesen Artikel nicht als Anleitung für Problemlösungen benutzen!

Einleitung

Mit dem Werkzeug „Allgemeiner SQL-Befehl“ können Attribute aus der Datenbank abgefragt und bearbeitet werden. Die SQL-Syntax bietet zum Teil andere Möglichkeiten, als die Feldberechnung, beispielsweise können mehrere Tabellen miteinander verknüpft werden. Außerdem lassen sich die Befehle abspeichern und wieder aufrufen, sodass Sie bestimmte Arbeitsabläufe leicht wiederholen können, denn ein SQL-Befehl kann aus mehreren Einzelbefehlen bestehen.

Dialogfeld

Feld Erklärung
Ausführen Führt den angezeigten SQL-Befehl/die angezeigten SQL-Befehle aus.
Laden Öffnet eine Textdatei mit SQL-Befehlen.
Speichern Speichert den angezeigten SQL-Befehl/die angezeigten SQL-Befehle zur späteren Verwendung in eine Textdatei.

Sie schließen den Editor mit dem kleinen [x] rechts oben.

Beispiele zu einzelnen Funktionen

(a) Werte aktualisieren – UPDATE

Alle Zeilen der Tabelle Rohre (mw_pipe) werden aktualisiert, indem die Rauigkeit (rcoeff) mit 1,15 multipliziert wird:

UPDATE mw_pipe SET rcoeff = rcoeff * 1.15;

(b) Bedingung – WHERE

In den Zeilen der Tabelle Schächte (msm_node), in denen der Durchmesser (diameter) 0,99 beträgt, wird der Durchmesser auf 1,00 gesetzt:

UPDATE msm_node SET diameter = 1.0 WHERE diameter = 0.99;

(c) Tabellenverknüpfung

Die Tabellenverknüpfung bezieht eine zusätzliche Tabellen mit ein. Im folgenden Beispiel werden Informationen aus der Haltungstabelle msm_Link in die Knotentabelle msm_Node geschrieben.

Konktret wird CriticalLevel von msm_Node mit der Summe aus Invertlevel (Schachtsohle) + Diameter (Profildurchmesser) der abgehenden Haltung aus msm_Link befüllt:

UPDATE msm_Node
SET CriticalLevel = InvertLevel + (SELECT msm_Link.Diameter FROM msm_Link WHERE msm_Link.FromNodeID = msm_Node.MUID)
WHERE EXISTS (SELECT * FROM msm_Link WHERE msm_Link.FromNodeID = msm_Node.MUID)

Quelle: Stackoverflow: Update table values from another table with the same user name

Anwendungsbeispiele

(a) Attribute zwischen Tabellen übertragen

Der folgende SQL Befehl schreibt in die Description der msm_Link Tabelle den Knotentyp (TypeNo) des Nach-Knotens (ToNodeID); Übernommen aus der msm_Node Tabelle. Anschließend können Sie beispielsweise Haltungen auswählen die in einem bestimmten Knotentyp enden.

UPDATE msm_Link SET Description = (SELECT msm_Node.TypeNo FROM msm_Node WHERE msm_Node.MUID = msm_Link.ToNodeID)

Offene Punkte

mikeurbanplus/dialog/menue_werkzeuge_sql-befehl.txt · Zuletzt geändert: 2021/01/16 16:59 von thomas