hubblec4 hat geschrieben: Sa 10. Sep 2022, 04:22 Wieso wird (BLOB) als Wert angezeigt in einigen Spalten?
Weil ein Blob meistens etwas Grösseres oder Binärdaten sind.
Wenn du einen Text-Blob anzeigen willst, dann mach einfach ein TDBMemo auf das Formular, setze Eigenschaft DataSource auf die Vorhandene und DataField auf den Namen des Feldes. Dann müsste dort beim ausgewählten Eintrag der Text erscheinen und auch editierbar sein.
Wenn du weisst, was du tust, kannst du alternativ auch versuchen, im PHP bei
Code: Alles auswählen
$mysql_data_type_hash = array (
...
252 => 'varchar', //statt blob
...
Dann in den Options des DBGrid1 "dgDisplayMemoText" auf True.
Und noch in XMLMySQLDataSet.pas ftMemo hinzufügen (oder wahlweise von git updaten https://github.com/theo222/lazarus_xmlmysqldataset)
Code: Alles auswählen
84: if Fields[i].OldValue <> Fields[i].NewValue then
85: case Fields[i].DataType of
86: ftString, ftBlob, ftMemo: SQL := //hier ftMemo ergänzen.
Das ist bei XMLMySQLDataSet nicht das Thema, ist ja nur eine Komponente.
Das kannst du mit einer PHP Session / Cookies etc. und TFPHttpClient lösen.
XMLMySQLDataSet gibt nur einen Key mit, damit man nicht "gratis" auf das PHP zugreifen kann.
Wichtig ist schon mal "HTTPS" zu verwenden.
Man kann XMLMySQLDataSet wie ein anderes TDataSet verwenden.hubblec4 hat geschrieben: Sa 10. Sep 2022, 04:22 Muss man dann immer so ein DBGrid verwenden um Datenbankeinträge anzuzeigen?
Das basiert auf dem xmldatapacketreader von fcl-dbhubblec4 hat geschrieben: Sa 10. Sep 2022, 04:22 Und dann natürlich die Frage nach dem XML und dessen Aufbau:
Hast du dir diese Struktur selbst ausgedacht oder wird die irgendwie vorgegeben/verlangt?
https://gitlab.com/freepascal.org/fpc/s ... treader.pp