Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] Wie sendet man eine SQL-Query mit Blockly?

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Wie sendet man eine SQL-Query mit Blockly?

    This topic has been deleted. Only users with topic management privileges can see it.
    • KlausStoertebeker
      KlausStoertebeker last edited by KlausStoertebeker

      Hallo ins Forum,
      ich möchte per Blockly-Skript die Verbindungen zu meinem SQL-Server zurücksetzen. Der entsprechende Befehl lautet:

      FLUSH HOSTS;
      

      Nach diversen Recherchen im Internet habe ich mir folgendes Blockly-Skipt erstellt, welches getriggert wird, wenn das Objekt "0_userdata.0.Schalter.Schalter_SQL-Verbindung_zurücksetzen" auf "wahr" gesetzt wird:

      Bildschirmfoto vom 2024-08-26 21-35-23.png
      Aber das Skript funktioniert nicht und im Skripteditor erhalte ich folgende Fehlermeldung, aus der ich nicht schlau werde:

      javascript.0	21:28:40.581	warn	at Object.<anonymous> (script.js.Systemwartung.Funktion_SQL-Verbindung_zurücksetzen:5:7)
      

      Das Blockly-Skript hat folgende JS-Notation:

      on({ id: '0_userdata.0.Schalter.Schalter_SQL-Verbindung_zurücksetzen' /* Schalter_SQL-Verbindung_zurücksetzen */, change: 'ne' }, async (obj) => {
        let value = obj.state.val;
        let oldValue = obj.oldState.val;
        if (getState('ID auswählen').val == true) {
          sendTo('sql.0', 'query', {
            'parameter': 'FLUSH HOSTS',
          });
          console.debug('sendTo[custom] sql.0: parameter: ' + 'FLUSH HOSTS' + '');
          setState('0_userdata.0.Schalter.Schalter_SQL-Verbindung_zurücksetzen' /* Schalter_SQL-Verbindung_zurücksetzen */, false);
        }
      });
      

      Kann mir jemand erklären, was hier falsch läuft und wie ich den Fehler beheben kann (siehe auch den Titel meines posts)?
      Vielen Dank und mit freundlichem Gruß

      "Klaus"

      KlausStoertebeker Codierknecht haus-automatisierung 3 Replies Last reply Reply Quote 0
      • KlausStoertebeker
        KlausStoertebeker @KlausStoertebeker last edited by

        Fehler gefunden:
        Im Block "Falls" habe ich vergessen, ein Objekt auszuwählen...

        Asgothian 1 Reply Last reply Reply Quote 0
        • Asgothian
          Asgothian Developer @KlausStoertebeker last edited by

          @klausstoertebeker sagte in [gelöst] Wie sendet man eine SQL-Query mit Blockly?:

          Fehler gefunden:
          Im Block "Falls" habe ich vergessen, ein Objekt auszuwählen...

          Ausgehend davon das du auch da das Objekt Schalter_SQL_Verbindung_zurücksetzen ausgewählt hast gibt es 2 mögliche Verbesserungen:

          • Option A (das nutze ich zumeist): Umstellen des Trigger auf ist grösser als vorher - dann kann der falls Block entfallen, weil der Trigger nur auf die Änderung falsch auf wahr anspringt (Fun fact: Bei JS gilt wahr > falsch)
          • Option B (das nutze ich wenn ich auf den Wert zugreifen will der den Trigger ausgelöst hat): Es gibt im Trugger-Bereich einen Baustein Wert vorbelegt ist. Im Falls statt des wert von Objekt ID ... Baustein diesen nutzen (siehe Bild).Screenshot 2024-08-27 at 08.28.15.png

          Nur so als Vorschlag.

          A.

          1 Reply Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @KlausStoertebeker last edited by

            @klausstoertebeker
            Ich setze zu @Asgothian noch einen drauf: In Benennungen am besten keine Umlaute verwenden.
            Weder in Scriptnamen, noch in Datenpunkten oder Variablen.

            1 Reply Last reply Reply Quote 0
            • haus-automatisierung
              haus-automatisierung Developer Most Active @KlausStoertebeker last edited by

              @klausstoertebeker sagte in [gelöst] Wie sendet man eine SQL-Query mit Blockly?:

              Kann mir jemand erklären, was hier falsch läuft und wie ich den Fehler beheben kann (siehe auch den Titel meines posts)?

              Du musst den Parameter-Namen entfernen damit das geht. Ist etwas unschön gelöst, aber nur so erreicht man, dass kein Objekt übergeben wird:

              Screenshot 2024-08-28 at 08.58.22.png

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate
              FAQ Cloud / IOT
              HowTo: Node.js-Update
              HowTo: Backup/Restore
              Downloads
              BLOG

              313
              Online

              31.6k
              Users

              79.5k
              Topics

              1.3m
              Posts

              4
              5
              196
              Loading More Posts
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes
              Reply
              • Reply as topic
              Log in to reply
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
              The ioBroker Community 2014-2023
              logo