Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. Fehler beim Speichern in SQL-Adapter

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Fehler beim Speichern in SQL-Adapter

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

      	Cannot insert INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(9469, 1625175559280, 18:E8:29:C7:39:85, 1, 25, 0);: Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ':E8:29:C7:39:85, 1, 25, 0)' at line 1 (id: sonoff.0.Tasmota_19.Wifi_BSSId)
      

      Ich habe den Datenpunkt im SQL-Adapter als "Zeichenfolge" hinterlegt.
      der sonoff-Adapter hat die Datenpunkte leider als "Number" angelegt.
      Dass hier noch der Wurm drin ist habe ich ja schon mitbekommen. Bisher hat die Einstellung im sql-Adapter das aber immer geheilt.

      Was kann ich tun (ausser die Datenpunkte per Hand zu ändern).
      Die Geräte habe ich schonmal alle gelöscht und neu angelegt. Kommen aber wieder als Number.

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

        @sissiwup sagte in Fehler beim Speichern in SQL-Adapter:

        	Cannot insert INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(9469, 1625175559280, 18:E8:29:C7:39:85, 1, 25, 0);: Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ':E8:29:C7:39:85, 1, 25, 0)' at line 1 (id: sonoff.0.Tasmota_19.Wifi_BSSId)
        

        Ich habe den Datenpunkt im SQL-Adapter als "Zeichenfolge" hinterlegt.
        der sonoff-Adapter hat die Datenpunkte leider als "Number" angelegt.
        Dass hier noch der Wurm drin ist habe ich ja schon mitbekommen. Bisher hat die Einstellung im sql-Adapter das aber immer geheilt.

        Was kann ich tun (ausser die Datenpunkte per Hand zu ändern).
        Die Geräte habe ich schonmal alle gelöscht und neu angelegt. Kommen aber wieder als Number.

        Um die BSSID muss sicherlich Anführungsstriche

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

          @oliverio sagte in Fehler beim Speichern in SQL-Adapter:

          Um die BSSID muss sicherlich Anführungsstriche

          Jein, da es ein String ist Ja, aber in der Tabelle ts_number ist val als Double definiert, hier gehören also nur Zahlen rein. Der Wert müsste eigentlich in die Tabelle ts_string, was aber scheinbar durch die Definition des DP als number verhindert wird. Ich würde mal versuchen:

          • SQL Logging für den DP ausschalten
          • DP als String abändern
          • SQL Logging einschalten und prüfen ob die Werte jetzt in ts_string landen
          • So oder so ein issue beim Sonoff-Adapter anlegen
          OliverIO 1 Reply Last reply Reply Quote 0
          • OliverIO
            OliverIO @fastfoot last edited by

            @fastfoot sagte in Fehler beim Speichern in SQL-Adapter:

            @oliverio sagte in Fehler beim Speichern in SQL-Adapter:

            Um die BSSID muss sicherlich Anführungsstriche

            Jein, da es ein String ist Ja, aber in der Tabelle ts_number ist val als Double definiert, hier gehören also nur Zahlen rein. Der Wert müsste eigentlich in die Tabelle ts_string, was aber scheinbar durch die Definition des DP als number verhindert wird. Ich würde mal versuchen:

            • SQL Logging für den DP ausschalten
            • DP als String abändern
            • SQL Logging einschalten und prüfen ob die Werte jetzt in ts_string landen
            • So oder so ein issue beim Sonoff-Adapter anlegen

            ah stimmt das ist die number tabelle.
            dann würde mich mal der datentyp des datenpunkts interessieren
            und ob man den wert auch direkt in den datenpunkt eintippen kann und was dann in der tabelle ankommt.
            theoretisch lässt sich dieser wert auch in eine (sehr große) integer umrechnen.
            ich bezweifle aber das das durch den adapter gemacht wird.
            ich denke das gehört in die string tabelle

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

              @oliverio sagte in Fehler beim Speichern in SQL-Adapter:

              @fastfoot sagte in Fehler beim Speichern in SQL-Adapter:

              @oliverio sagte in Fehler beim Speichern in SQL-Adapter:

              Um die BSSID muss sicherlich Anführungsstriche

              Jein, da es ein String ist Ja, aber in der Tabelle ts_number ist val als Double definiert, hier gehören also nur Zahlen rein. Der Wert müsste eigentlich in die Tabelle ts_string, was aber scheinbar durch die Definition des DP als number verhindert wird. Ich würde mal versuchen:

              • SQL Logging für den DP ausschalten
              • DP als String abändern
              • SQL Logging einschalten und prüfen ob die Werte jetzt in ts_string landen
              • So oder so ein issue beim Sonoff-Adapter anlegen

              ah stimmt das ist die number tabelle.
              dann würde mich mal der datentyp des datenpunkts interessieren
              und ob man den wert auch direkt in den datenpunkt eintippen kann und was dann in der tabelle ankommt.
              theoretisch lässt sich dieser wert auch in eine (sehr große) integer umrechnen.
              ich bezweifle aber das das durch den adapter gemacht wird.
              ich denke das gehört in die string tabelle

              der TE schreibt dass der Adapter den DP als number definiert. Er hat allerdings im Logging Zeichenkette angegeben, da würde ich jetzt denken dass das auch ein issue des SQL Adapters ist, den Wert dann nicht in die ts_string zu schreiben, bin mir aber über diese Einstellung(bzw ihre Auswirkung) nicht im Klaren. Einfügen mit Anführungszeichen wirft wie erwartet einen Fehler

              Edit: Am SQL Adapter liegt es wohl nicht, wenn ich im Logging einen numerischen Wert als Zeichenkette angebe, dann landen diese Werte in ts_string. Evtl. muss danach der SQL Adapter neu gestartet werden, ich habe es jedenfalls so gemacht. Nach Rückänderung landen die Werte auch wieder in ts_number

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

                @fastfoot

                Das hier ist kein numerischer Wert
                18:E8:29:C7:39:85
                Auch für die Datenbank ist das eine Zeichenkette
                Wenn ich den Wert in Iobroker in einen datenpunkt vom Typ Zahl eingebe, bleibt nur 18 übrig, der Rest wird abgeschnitten.

                Wenn im sonoff Adapter, obwohl der datenpunkt vom Typ Zahl ist und der Wert dennoch wie oben angezeigt wird, dann läuft da was falsch.

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

                Support us

                ioBroker
                Community Adapters
                Donate

                950
                Online

                31.9k
                Users

                80.1k
                Topics

                1.3m
                Posts

                sql adapter
                3
                6
                551
                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