Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Werte aus SQL Datenbank anzeigen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Werte aus SQL Datenbank anzeigen

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

      Hallo,
      ich habe einen Raspberry der Temperaturen in eine SQL Datenbank schreibt.
      Diese würde ich gerne auslesen und als Datenpunkte im IObroker einbinden.
      Leider habe ich nichts gefunden wie ich eine Tabelle in einem Datenpunkt angeben könnte.
      Die SQL Datenbank habe ich bereits angebunden.

      UncleSam 1 Reply Last reply Reply Quote 0
      • UncleSam
        UncleSam Developer @femi last edited by UncleSam

        @femi said in Werte aus SQL Datenbank anzeigen:

        ich habe einen Raspberry der Temperaturen in eine SQL Datenbank schreibt.

        Wäre es nicht einfacher, ioBroker als Slave auch auf dem Raspi laufen zu lassen und die Werte ganz normal per Adapter einzulesen?

        Diese würde ich gerne auslesen und als Datenpunkte im IObroker einbinden.
        Leider habe ich nichts gefunden wie ich eine Tabelle in einem Datenpunkt angeben könnte.

        Du wirst ein Skript machen müssen, das die Daten in einen von dir erstellen Datenpunkt schreibt.

        Die SQL Datenbank habe ich bereits angebunden.

        Dann kennst du das?
        https://github.com/ioBroker/ioBroker.sql#custom-queries

        F 1 Reply Last reply Reply Quote 1
        • F
          femi @UncleSam last edited by

          @unclesam
          Danke für die Antwort,
          Klar könnte ich auf dem Raspberry auch IO Broker installieren, aber dann müsste ich fast alles neu machen. Nur um ein paar Felder aus der Datenbank auszulesen.
          Das ist mir für diese Spielerei dann doch zu viel Aufwand.

          liv-in-sky 1 Reply Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @femi last edited by

            @femi

            z.b. holt daten

               sendTo('sql.0', 'query', 'SELECT download FROM todaydownload.today', function (result) {
                   
                if (result.error) {
                    console.error(result.error);
                } else {
                   setState("controll-own.0.HANDY.SQLToDos",JSON.stringify(result.result));
                    //setState("controll-own.0.HANDY.SQLToDos",result.result);
                    //show result
                     console.log('Rows: ' + JSON.stringify(result.result));
                     //console.log(result.result[0]);
                   
              
                }
            });
            

            oder hier hole ich sql variablen

               sendTo('sql.0', 'query', 'show status like "Connection_errors_max_connections"', function (result) { 
                if (result.error) {
                    console.error(result.error);
            
                } else {
                  
                      // console.log('Rows: ' + JSON.stringify(result.result));
                       //console.log(result.result[0].Value);
                     //var abc = JSON.stringify(result.result);
                     //abc = abc.replace( /[|]/g , "");
                     //var json = JSON.parse(abc);
                      // console.log(json.Value);
                    
                    setState("controll-own.0.FUTRO.SQLConnections",result.result[0].Value);
                   // var json1 = JSON.parse(result.result);
            
            
            
                       }
            });
            
            F 1 Reply Last reply Reply Quote 0
            • F
              femi @liv-in-sky last edited by

              @liv-in-sky
              leider habe ich viel zu wenig Ahnung von dem was du mit dem Script machst, vielleicht kannst du mir mal auf die Sprünge helfen.

              liv-in-sky 1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @femi last edited by

                @femi

                • du brauchst den sql adapter
                • du brauchst erstmal das "sql-query" selbst - die eigentliche sql abfrage- kannst du im phpadmin erstellen hast du das ?
                F 1 Reply Last reply Reply Quote 0
                • F
                  femi @liv-in-sky last edited by

                  @liv-in-sky
                  den SQL Adapter hab ich ja bereits installiert und funktioniert auch.
                  Aber wie kriege ich einen Datenpunkt erstellt der eine Tabelle ausliest?

                  liv-in-sky 1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @femi last edited by

                    @femi kannst du die sql sprache - wie beschreibst du die tabelle ?

                    F 1 Reply Last reply Reply Quote 0
                    • F
                      femi @liv-in-sky last edited by

                      @liv-in-sky
                      die Daten sind in der Datenbank schon drin, da habe ich ein Script geschrieben, das alle 15 Minuten die Fühler abfragt und die Werte in die Datenbank schreibt.

                      liv-in-sky 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @femi last edited by liv-in-sky

                        @femi

                        dann erstell das query , welches du brauchst - nimm das erste script von oben und gib das query mit der datenbank (tabelle) ein

                        unter setState gibst du einen datenpunkt (typ zeichenkette) ein, welchen du selbst angelegt hast,

                        F 1 Reply Last reply Reply Quote 0
                        • F
                          femi @liv-in-sky last edited by

                          @liv-in-sky
                          leider verstehe ich nur Bahnhof,
                          wo soll ich das Query erstellen?

                          liv-in-sky OliverIO 2 Replies Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @femi last edited by

                            @femi schau mal in den chat

                            1 Reply Last reply Reply Quote 0
                            • OliverIO
                              OliverIO @femi last edited by

                              @femi
                              wie wäre es die Datenbank (ich gehe davon aus, das es mysql/maria ist), abzufragen
                              und direkt json werte daraus zu machen und in einen datenpunkt zu schreiben
                              die können dann im widget json table angezeigt werden

                              https://stackoverflow.com/questions/41758870/how-to-convert-result-table-to-json-array-in-mysql

                              F 1 Reply Last reply Reply Quote 0
                              • F
                                femi @OliverIO last edited by

                                @oliverio
                                Ja klar, das würde funktionieren, aber in dem verlinktem Post sehe ich keine Datenbankabfrage.
                                Leider kenne ich mich mit json scripten überhaupt nicht aus.

                                OliverIO liv-in-sky 2 Replies Last reply Reply Quote 0
                                • OliverIO
                                  OliverIO @femi last edited by

                                  @femi

                                  im beispiel wird der sql-adapter verwendet.
                                  mit dem sendTo-Befehl kann man mit dem sprechen und ein sql-statement übergeben
                                  im adapter ist konfiguriert, wo die sql-datenbank zu erreichen ist.
                                  bei erfolg gibt der sendto-befehl dann in result die Daten zurück.

                                  1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @femi last edited by liv-in-sky

                                    @femi

                                    für später:
                                    habe versucht, dass nachzustellen - bei mir gehts so:

                                       sendTo('sql.0', 'query', 'SELECT temeratur FROM testMyTimestapm.tbl_Fuehler1 ORDER BY timestamp DESC LIMIT 1', function (result) {
                                    
                                           
                                    
                                        if (result.error) {
                                    
                                            console.error(result.error);
                                    
                                        } else {
                                    
                                           setState("0_userdata.0.TemperaturFuehler.Fuehler1",Number(JSON.stringify(result.result[0].temeratur)));
                                        log(JSON.stringify(result.result[0].temeratur))
                                    
                                    
                                        }
                                    
                                    });
                                    

                                    Image 3.png

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    586
                                    Online

                                    32.0k
                                    Users

                                    80.5k
                                    Topics

                                    1.3m
                                    Posts

                                    4
                                    16
                                    2729
                                    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