Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Mysql Datenbank Daten in IOBoker

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

Mysql Datenbank Daten in IOBoker

Geplant Angeheftet Gesperrt Verschoben JavaScript
15 Beiträge 5 Kommentatoren 885 Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R Offline
    R Offline
    Rolf Sauer
    schrieb am zuletzt editiert von Homoran
    #1

    Hallo Community

    ich habe probiert ein Skript zu Schreiben. Mit mäßigem Erfolg.

    Ich möchte die Daten von SQL-Abfrage zu einer IOBoker Variable >einspiesung_temp_2< übertragen.
    Die Variable ist als JSON deklariert.
    Ich sehe im LOG die Daten, kann sie aber nicht übergeben, leider komme ich dort nicht weiter :-(
    Bin halt kein Programmierer.

    Vielleicht hat einer für mich einen Tipp

    <<<<<<<<<<<<<<<<

    sendTo ('sql.0','query','SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 ', function(result) {
        if (result.error) {
            console.error('Fehler bei der Abfrage: rolf ', result.error);
        }else {
            einspeisung_temp_2 = JSON.stringify(result);
             console.log(einspeisung_temp_2);
            if (result && result.length > 0) {
            const value = result[0].val; // Wert der ID=
            const timestamp = result[0].ts; // Zeitstempel der ID=
            console.log('Wert:', value);
            console.log('Zeitstempel:', timestamp);
            // Hier kannst du die Werte in ioBroker speichern oder weiterverarbeiten
        } else {
            console.log('Keine Daten gefunden für');
        }
        }});
    

    <<<<<<<<<<<<<<

    MOD-EDIT: Code in code-tags gesetzt!

    16a6c6cf-55da-438b-a469-be5d6fb30cd9-image.png

    Samson71S mickymM 2 Antworten Letzte Antwort
    0
    • R Rolf Sauer

      Hallo Community

      ich habe probiert ein Skript zu Schreiben. Mit mäßigem Erfolg.

      Ich möchte die Daten von SQL-Abfrage zu einer IOBoker Variable >einspiesung_temp_2< übertragen.
      Die Variable ist als JSON deklariert.
      Ich sehe im LOG die Daten, kann sie aber nicht übergeben, leider komme ich dort nicht weiter :-(
      Bin halt kein Programmierer.

      Vielleicht hat einer für mich einen Tipp

      <<<<<<<<<<<<<<<<

      sendTo ('sql.0','query','SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 ', function(result) {
          if (result.error) {
              console.error('Fehler bei der Abfrage: rolf ', result.error);
          }else {
              einspeisung_temp_2 = JSON.stringify(result);
               console.log(einspeisung_temp_2);
              if (result && result.length > 0) {
              const value = result[0].val; // Wert der ID=
              const timestamp = result[0].ts; // Zeitstempel der ID=
              console.log('Wert:', value);
              console.log('Zeitstempel:', timestamp);
              // Hier kannst du die Werte in ioBroker speichern oder weiterverarbeiten
          } else {
              console.log('Keine Daten gefunden für');
          }
          }});
      

      <<<<<<<<<<<<<<

      MOD-EDIT: Code in code-tags gesetzt!

      16a6c6cf-55da-438b-a469-be5d6fb30cd9-image.png

      Samson71S Offline
      Samson71S Offline
      Samson71
      Global Moderator
      schrieb am zuletzt editiert von
      #2

      @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

      Vielleicht hat einer für mich einen Tipp

      Ja, Protokolle und Logs bitte in Code-Tags packen (oben im Menü </>) und nicht Micro-Screenshots in den Post hängen.

      Markus

      Bitte beachten:
      Hinweise für gute Forenbeiträge
      Maßnahmen zum Schutz des Forums

      1 Antwort Letzte Antwort
      0
      • R Rolf Sauer

        Hallo Community

        ich habe probiert ein Skript zu Schreiben. Mit mäßigem Erfolg.

        Ich möchte die Daten von SQL-Abfrage zu einer IOBoker Variable >einspiesung_temp_2< übertragen.
        Die Variable ist als JSON deklariert.
        Ich sehe im LOG die Daten, kann sie aber nicht übergeben, leider komme ich dort nicht weiter :-(
        Bin halt kein Programmierer.

        Vielleicht hat einer für mich einen Tipp

        <<<<<<<<<<<<<<<<

        sendTo ('sql.0','query','SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 ', function(result) {
            if (result.error) {
                console.error('Fehler bei der Abfrage: rolf ', result.error);
            }else {
                einspeisung_temp_2 = JSON.stringify(result);
                 console.log(einspeisung_temp_2);
                if (result && result.length > 0) {
                const value = result[0].val; // Wert der ID=
                const timestamp = result[0].ts; // Zeitstempel der ID=
                console.log('Wert:', value);
                console.log('Zeitstempel:', timestamp);
                // Hier kannst du die Werte in ioBroker speichern oder weiterverarbeiten
            } else {
                console.log('Keine Daten gefunden für');
            }
            }});
        

        <<<<<<<<<<<<<<

        MOD-EDIT: Code in code-tags gesetzt!

        16a6c6cf-55da-438b-a469-be5d6fb30cd9-image.png

        mickymM Offline
        mickymM Offline
        mickym
        Most Active
        schrieb am zuletzt editiert von
        #3

        @rolf-sauer

        1. Erst mal eine Frage - wennn Du kein Programmierer bist, warum programmierst Du dann und nutzt nicht die Logikmaschinen, wie Blockly oder NodeRed?
        2. Wennn Du Code hier einstellst, dann bitte in CodeTags.
          Code-Tags.gif

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        R 1 Antwort Letzte Antwort
        0
        • mickymM mickym

          @rolf-sauer

          1. Erst mal eine Frage - wennn Du kein Programmierer bist, warum programmierst Du dann und nutzt nicht die Logikmaschinen, wie Blockly oder NodeRed?
          2. Wennn Du Code hier einstellst, dann bitte in CodeTags.
            Code-Tags.gif
          R Offline
          R Offline
          Rolf Sauer
          schrieb am zuletzt editiert von
          #4

          @mickym Ja würde ich gerne mit Blockly machen wenn es dann die Funktion die ich bräuchte geben würde. Leider habe ich nicht passendes gefunden.

          In jungen Jahren habe ich Pascal und Turbopascal und Topas Programmiert aber es ist schon lange her.🙃

          1 Antwort Letzte Antwort
          0
          • CodierknechtC Online
            CodierknechtC Online
            Codierknecht
            Developer Most Active
            schrieb am zuletzt editiert von
            #5

            @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

            würde ich gerne mit Blockly machen wenn es dann die Funktion die ich bräuchte geben würde

            Gibt es doch:

            a536af05-6480-49f6-9a25-28bae58ccb47-grafik.png

            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
            HmIP|ZigBee|Tasmota|Unifi
            Zabbix Certified Specialist
            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

            R 2 Antworten Letzte Antwort
            0
            • CodierknechtC Codierknecht

              @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

              würde ich gerne mit Blockly machen wenn es dann die Funktion die ich bräuchte geben würde

              Gibt es doch:

              a536af05-6480-49f6-9a25-28bae58ccb47-grafik.png

              R Offline
              R Offline
              Rolf Sauer
              schrieb am zuletzt editiert von
              #6

              @codierknecht

              Funktioniert aber aus irgend einem Grund nicht bei mir. Ich habe Stundenlang probiert und keine Rückmeldung bekommen.

              Das wäre 100 mal mir lieber wenn ich von da aus die Daten in den iobroker übernehmen könnte.

              1 Antwort Letzte Antwort
              0
              • mickymM Offline
                mickymM Offline
                mickym
                Most Active
                schrieb am zuletzt editiert von mickym
                #7

                @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

                @codierknecht

                Funktioniert aber aus irgend einem Grund nicht bei mir. Ich habe Stundenlang probiert und keine Rückmeldung bekommen.

                Das wäre 100 mal mir lieber wenn ich von da aus die Daten in den iobroker übernehmen könnte.

                Ja das Blockly schaffe ich auch gerade nicht - aber Deinen Code habe ich soweit geändert - Du darfst das Objekt nicht stringifizieren:

                
                sendTo ('sql.0','query','SELECT * FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 ', function(result) {
                if (result.error) {
                console.error('Fehler bei der Abfrage: rolf ', result.error);
                }else {
                
                console.log(result);
                for (var record of result.result){
                    console.log('Wert:' + record.val);
                    console.log('Zeitstempel:' + record.ts);
                }
                
                /* if (result && result.length > 0) {
                const value = result[0].val; // Wert der ID=
                const timestamp = result[0].ts; // Zeitstempel der ID=
                console.log('Wert:', value);
                console.log('Zeitstempel:', timestamp);
                // Hier kannst du die Werte in ioBroker speichern oder weiterverarbeiten
                } else {
                console.log('Keine Daten gefunden für');
                } */
                }});
                

                So bekommst die Einzelwerte raus.

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                mickymM 1 Antwort Letzte Antwort
                0
                • CodierknechtC Codierknecht

                  @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

                  würde ich gerne mit Blockly machen wenn es dann die Funktion die ich bräuchte geben würde

                  Gibt es doch:

                  a536af05-6480-49f6-9a25-28bae58ccb47-grafik.png

                  R Offline
                  R Offline
                  Rolf Sauer
                  schrieb am zuletzt editiert von Samson71
                  #8

                  @codierknecht

                  Mein ergebnis mit Blockly

                  3c228d8c-6ba7-499f-8205-1576f6492409-image.png

                  15.3.2025, 14:18:41.965	[info ]: javascript.0 (1126) Stopping script script.js.Skript_12
                  15.3.2025, 14:18:42.014	[info ]: javascript.0 (1126) Start JavaScript script.js.Skript_12 (Blockly)
                  15.3.2025, 14:18:42.016	[info ]: javascript.0 (1126) script.js.Skript_12: sendTo(instance=sql.0, cmd=query, msg={"parameter":"SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 "}, hasCallback=true)
                  15.3.2025, 14:18:42.016	[error]: javascript.0 (1126) script.js.Skript_12: sendTo[custom] sql.0: parameter: SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 
                  15.3.2025, 14:18:42.016	[info ]: javascript.0 (1126) script.js.Skript_12: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                  15.3.2025, 14:18:42.018	[info ]: javascript.0 (1126) script.js.Skript_12: { error: 'Error: No query provided' }
                  

                  MOD-EDIT: BITTE CODE-TAGS BENUTZEN!

                  mickymM CodierknechtC 2 Antworten Letzte Antwort
                  0
                  • R Rolf Sauer

                    @codierknecht

                    Mein ergebnis mit Blockly

                    3c228d8c-6ba7-499f-8205-1576f6492409-image.png

                    15.3.2025, 14:18:41.965	[info ]: javascript.0 (1126) Stopping script script.js.Skript_12
                    15.3.2025, 14:18:42.014	[info ]: javascript.0 (1126) Start JavaScript script.js.Skript_12 (Blockly)
                    15.3.2025, 14:18:42.016	[info ]: javascript.0 (1126) script.js.Skript_12: sendTo(instance=sql.0, cmd=query, msg={"parameter":"SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 "}, hasCallback=true)
                    15.3.2025, 14:18:42.016	[error]: javascript.0 (1126) script.js.Skript_12: sendTo[custom] sql.0: parameter: SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 
                    15.3.2025, 14:18:42.016	[info ]: javascript.0 (1126) script.js.Skript_12: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                    15.3.2025, 14:18:42.018	[info ]: javascript.0 (1126) script.js.Skript_12: { error: 'Error: No query provided' }
                    

                    MOD-EDIT: BITTE CODE-TAGS BENUTZEN!

                    mickymM Offline
                    mickymM Offline
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von mickym
                    #9

                    @rolf-sauer Ja das bekomme ich auch - für mich sieht das nach einem Bug aus. Ich hab Dir unten eine Lösung mit Deinem JS Code geschickt.

                    Selbst mit NodeRed kann man den SQL Adapter vernünftig abfragen:
                    0019e345-c197-4aa0-b360-d3ee1a70ee1d-image.png

                    Das ist eindeutig ein Blockly Fehler.

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    1 Antwort Letzte Antwort
                    0
                    • mickymM mickym

                      @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

                      @codierknecht

                      Funktioniert aber aus irgend einem Grund nicht bei mir. Ich habe Stundenlang probiert und keine Rückmeldung bekommen.

                      Das wäre 100 mal mir lieber wenn ich von da aus die Daten in den iobroker übernehmen könnte.

                      Ja das Blockly schaffe ich auch gerade nicht - aber Deinen Code habe ich soweit geändert - Du darfst das Objekt nicht stringifizieren:

                      
                      sendTo ('sql.0','query','SELECT * FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 ', function(result) {
                      if (result.error) {
                      console.error('Fehler bei der Abfrage: rolf ', result.error);
                      }else {
                      
                      console.log(result);
                      for (var record of result.result){
                          console.log('Wert:' + record.val);
                          console.log('Zeitstempel:' + record.ts);
                      }
                      
                      /* if (result && result.length > 0) {
                      const value = result[0].val; // Wert der ID=
                      const timestamp = result[0].ts; // Zeitstempel der ID=
                      console.log('Wert:', value);
                      console.log('Zeitstempel:', timestamp);
                      // Hier kannst du die Werte in ioBroker speichern oder weiterverarbeiten
                      } else {
                      console.log('Keine Daten gefunden für');
                      } */
                      }});
                      

                      So bekommst die Einzelwerte raus.

                      mickymM Offline
                      mickymM Offline
                      mickym
                      Most Active
                      schrieb am zuletzt editiert von mickym
                      #10

                      Hier nochmal Dein Code mit der id 72:

                       
                      sendTo ('sql.0','query','SELECT * FROM iobroker.ts_number WHERE  id = 72 AND ack = 0', function(result) {
                      if (result.error) {
                      console.error('Fehler bei der Abfrage: rolf ', result.error);
                      }else {
                       
                      console.log(result);
                      for (var record of result.result){
                          console.log('Wert:' + record.val);
                          console.log('Zeitstempel:' + record.ts);
                      }
                      
                      }});
                      

                      Ich würde Dir empfehlen auch noch auf ack = 0 zu selektieren, als Dein SQL Statement wie folgt ändern:

                      'sql.0','query','SELECT * FROM iobroker.ts_number WHERE id = 72 AND ack = 0 ',
                      

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      R 1 Antwort Letzte Antwort
                      0
                      • mickymM mickym

                        Hier nochmal Dein Code mit der id 72:

                         
                        sendTo ('sql.0','query','SELECT * FROM iobroker.ts_number WHERE  id = 72 AND ack = 0', function(result) {
                        if (result.error) {
                        console.error('Fehler bei der Abfrage: rolf ', result.error);
                        }else {
                         
                        console.log(result);
                        for (var record of result.result){
                            console.log('Wert:' + record.val);
                            console.log('Zeitstempel:' + record.ts);
                        }
                        
                        }});
                        

                        Ich würde Dir empfehlen auch noch auf ack = 0 zu selektieren, als Dein SQL Statement wie folgt ändern:

                        'sql.0','query','SELECT * FROM iobroker.ts_number WHERE id = 72 AND ack = 0 ',
                        
                        R Offline
                        R Offline
                        Rolf Sauer
                        schrieb am zuletzt editiert von
                        #11

                        @mickym

                        Super das Funktioniert

                        jetzt müste ich es nur noch in eine IOBoker Variable portiert bekommen so das ich es bei Diagram als JSON benutzen könnte.

                        mickymM 1 Antwort Letzte Antwort
                        0
                        • R Rolf Sauer

                          @mickym

                          Super das Funktioniert

                          jetzt müste ich es nur noch in eine IOBoker Variable portiert bekommen so das ich es bei Diagram als JSON benutzen könnte.

                          mickymM Offline
                          mickymM Offline
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von mickym
                          #12

                          @rolf-sauer Das verstehe ich nicht. Du siehst doch den Wert im Log und so kannst Du es doch in den Datenpunkt schreiben oder von mir aus gleich ein JSON erstellen mit ts und Wert?

                          So ?

                          e85da2e7-3901-44a3-b628-521f963b8c5e-image.png

                          dann einfach diese Zeile nehmen:

                          console.log(JSON.stringify ({"Wert": record.val, "Zeitstempel": record.ts}))
                          

                          das kannst Du ja in einen Datenpunkt schreiben.

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          1 Antwort Letzte Antwort
                          0
                          • R Rolf Sauer

                            @codierknecht

                            Mein ergebnis mit Blockly

                            3c228d8c-6ba7-499f-8205-1576f6492409-image.png

                            15.3.2025, 14:18:41.965	[info ]: javascript.0 (1126) Stopping script script.js.Skript_12
                            15.3.2025, 14:18:42.014	[info ]: javascript.0 (1126) Start JavaScript script.js.Skript_12 (Blockly)
                            15.3.2025, 14:18:42.016	[info ]: javascript.0 (1126) script.js.Skript_12: sendTo(instance=sql.0, cmd=query, msg={"parameter":"SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 "}, hasCallback=true)
                            15.3.2025, 14:18:42.016	[error]: javascript.0 (1126) script.js.Skript_12: sendTo[custom] sql.0: parameter: SELECT *  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 
                            15.3.2025, 14:18:42.016	[info ]: javascript.0 (1126) script.js.Skript_12: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                            15.3.2025, 14:18:42.018	[info ]: javascript.0 (1126) script.js.Skript_12: { error: 'Error: No query provided' }
                            

                            MOD-EDIT: BITTE CODE-TAGS BENUTZEN!

                            CodierknechtC Online
                            CodierknechtC Online
                            Codierknecht
                            Developer Most Active
                            schrieb am zuletzt editiert von
                            #13

                            @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

                            Mein ergebnis mit Blockly

                            Du musst den Parameter "parameter" umbenennen in einen leeren String.
                            Wie im Beispiel gezeigt.

                            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                            HmIP|ZigBee|Tasmota|Unifi
                            Zabbix Certified Specialist
                            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                            R 1 Antwort Letzte Antwort
                            0
                            • CodierknechtC Codierknecht

                              @rolf-sauer sagte in Mysql Datenbank Daten in IOBoker:

                              Mein ergebnis mit Blockly

                              Du musst den Parameter "parameter" umbenennen in einen leeren String.
                              Wie im Beispiel gezeigt.

                              R Offline
                              R Offline
                              Ralf 2
                              schrieb am zuletzt editiert von
                              #14

                              @Rolf-Sauer
                              Was hast du eigentlich vor? Willst du das in ein Materialdesign JSON-Chart darstellen?
                              Warum nicht direkt mit einem Chart-Widget direkt aus der SQL-Datenbank darstellen?
                              Ich benutze den JSON-Chart zwar auch (aufbereitet mit TypeScript) aber nur da, wo ich Daten aus anderen Quellen als MySQL darstellen will.

                              Ansonsten: Denkt bitte daran, das alle bisherigen Abfragen ALLE gespeicherten Datenpunkt ausliest.
                              Entweder die Datenbank so einstellen, das sie nur begrenzt speichert (und nicht große Zeiträume)
                              Oder in der Query auf TS begrenzen Stichwort für die Where-Klausel:

                              date(from_unixtime(floor(ts/1000))) as 'Datum'
                              

                              Oder die Query mit einem sinnvollen Limit versehen.

                              Gruß Ralf

                              R 1 Antwort Letzte Antwort
                              0
                              • R Ralf 2

                                @Rolf-Sauer
                                Was hast du eigentlich vor? Willst du das in ein Materialdesign JSON-Chart darstellen?
                                Warum nicht direkt mit einem Chart-Widget direkt aus der SQL-Datenbank darstellen?
                                Ich benutze den JSON-Chart zwar auch (aufbereitet mit TypeScript) aber nur da, wo ich Daten aus anderen Quellen als MySQL darstellen will.

                                Ansonsten: Denkt bitte daran, das alle bisherigen Abfragen ALLE gespeicherten Datenpunkt ausliest.
                                Entweder die Datenbank so einstellen, das sie nur begrenzt speichert (und nicht große Zeiträume)
                                Oder in der Query auf TS begrenzen Stichwort für die Where-Klausel:

                                date(from_unixtime(floor(ts/1000))) as 'Datum'
                                

                                Oder die Query mit einem sinnvollen Limit versehen.

                                R Offline
                                R Offline
                                Rolf Sauer
                                schrieb am zuletzt editiert von Rolf Sauer
                                #15

                                @ralf-2

                                Liebe Danke es funktioniert

                                Hier die Funktionierende Abfrage

                                sendTo('sql.0', 'query', 'SELECT (iobroker.ts_number.ts) , iobroker.ts_number.val  FROM iobroker.ts_number WHERE iobroker.ts_number.id = 72 ', function (result) {
                                    if (result.error) {
                                        console.error('Fehler bei der Abfrage:', result.error);
                                    } else {
                                        let liste = new Array;
                                        let x = 0;
                                        for (var record of result.result) {
                                            let jsonRecord = {
                                                val: record.val, // Ersetze dies durch den tatsächlichen Wert
                                                ts: record.ts // Ersetze dies durch den tatsächlichen Zeitstempel
                                
                                            };
                                            liste[x] = jsonRecord;
                                            x++;
                                            // console.log('val :' + record.val);
                                            // console.log('ts :' + record.ts);
                                        }
                                        const jsonString = JSON.stringify(liste);
                                        setState('javascript.0.Meine_Variabeln.Temp1', jsonString);
                                        // console.log(jsonString);
                                    }
                                });
                                

                                Es gibt noch einen Warnung aber die Funktion ist gegeben.

                                <<< at Object.<anonymous> (script.js.SQL_Lesen:21:9)

                                DANKE !!!!!!!

                                1 Antwort Letzte Antwort
                                0
                                Antworten
                                • In einem neuen Thema antworten
                                Anmelden zum Antworten
                                • Älteste zuerst
                                • Neuste zuerst
                                • Meiste Stimmen


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                848

                                Online

                                32.4k

                                Benutzer

                                81.5k

                                Themen

                                1.3m

                                Beiträge
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Anmelden

                                • Du hast noch kein Konto? Registrieren

                                • Anmelden oder registrieren, um zu suchen
                                • Erster Beitrag
                                  Letzter Beitrag
                                0
                                • Home
                                • Aktuell
                                • Tags
                                • Ungelesen 0
                                • Kategorien
                                • Unreplied
                                • Beliebt
                                • GitHub
                                • Docu
                                • Hilfe