cubesql MemoryBlock sichern geht schief

Anbei der Code, mit einen lokalen Datenbank klappt das problemlos, liegt die Datenbank auf dem cubesql Server geht es schief. Das Bild wird nicht gesichert!
Jetzt frage ich mich woran das liegen könnte

dim m As MemoryBlock = pic.GetData(Picture.FormatPNG,picture.QualityHigh)
rs=dbfakt.SQLSelect("select rowid, * from images where feldd=1 and feldf=0 and id_unique_artikel='"+id_unique+"'")
if rs<> nil and rs.RecordCount>0 then
  rs.edit
  rs.field("picture").StringValue=m
  rs.field("artikelnummer").StringValue=nr
  rs.field("id_unique_artikel").StringValue=id_unique
  rs.field("feldd").StringValue="1" // für Artikelkarte
  rs.field("feldf").StringValue="0" // Bild Startseite
  rs.Update
end if

Was heit “nicht gesichert”? Gibt es eine Fehlermeldung oder bleibt das Feld “picture” in der Datenbank leer, die anderen werden aber gefllt?

Ich wrde zuerst den MemoryBlock in einen String umwandeln: Dim mb As MemoryBlock = pic.GetData(...) Dim s As String ... rs.Field("picture").StringValue = s

EncodeBase64 knnte auch hilfreich sein.

Die DB bleibt leer …

ja EncodeBase64 löst das Problem, aber warum? Das ergibt für mich keinen Sinn, da es ja lokal klappt und mit alten versionen des Servers auch geklappt hat… seit Jahren

Weil ein (MemoryBlock-)String Zeichen enthalten kann, die nicht gespeichert werden können.

Da es sich um SQLite handelt, sollte auch das funktionieren:

rs.Field("picture").PictureValue = pic

Ja, das tut es auch, ich war halt nur verwundert, weil das bisher immer klappte… vor allem, weil es auch mit einer lokalen DB klappt

Aber gut, Problem gelöst!

DANKE!