AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi In Firebird Blob-Text-Felder mit UTF-8 schreiben
Thema durchsuchen
Ansicht
Themen-Optionen

In Firebird Blob-Text-Felder mit UTF-8 schreiben

Ein Thema von TheMiller · begonnen am 13. Apr 2012 · letzter Beitrag vom 16. Apr 2012
 
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#4

AW: In Firebird Blob-Text-Felder mit UTF-8 schreiben

  Alt 14. Apr 2012, 11:34
Hallo.

Danke für die Antworten. Dann nehme ich von MySQL erstmal Abstand.

Zu dem Unicode-Problem:

Also eigentlich wollte ich damals bei Beginn des Projekts volle Unicode-Unterstützung, da es einfach die Zukunft ist und keine weiß, was sie so bringt. Daher gleich von Anfang an Unicode. Deswegen würde ich das gerne weiter so durchziehen.

Die Datenbank habe ich leider nicht mit "default character set UTF8" erstellt, sondern dazu - glaube ich - nichts angegeben. Ich habe sie über ein Programm erstellt und immer, wenn ich nach Character Set gefragt wurde, habe ich UTF8 genommen.

Habe jetzt auch getestet: All meine VarChar-Felder sind wirklich echtes UTF8. Ich kann aus der Windows-Zeichentabelle alle Unicode-Zeichen eintragen - sie werden richtig gespeichert, stehen in der DB richtig und werden auch wieder richtig angezeigt.

Erstelle ich ein Blob-Feld (Subtype text) CS UTF8, dann werden bei Unicode-Zeichen nur "???" gespeichert. Warum? Ich schätze dann mal, dass es nicht an der Datenbank(-Definition), sondern entweder der Version (2.1) oder an der Verbindung (UniDAC) liegt.

Reicht es für ein Update der DB aus, das neue Paket zu laden und die Daten einfach zu ersetzen, oder muss ich noch Queries in der DB dazu ausführen?

Auch habe ich noch eine Frage zu den Blobs generell. In den Links, die ihr gepostet habt, steht folgender Satz drin:

Zitat:
And simply replacing your large VARCHARs with blobs is not necessarily the solution. Every time you change it, the versions are stored in the memory which can have a huge negative impact on server performance. So if you do work with variables that are blobs, do not manipulate them too often. Or alternatively work on VARCHAR variables and combine them in the last step to a single blob.
Ich kann zwar gut Englisch, aber das verstehe ich nicht ganz (vom Sinn her). Heißt dass, das jede Änderung eines Blob-Wertes gespeichert wird? Das wäre ziemlich schlecht, da ich all meine Datensätze (RTF-Format) in Blobs speichere. Keine RTF-Dokumente, aber RTF-Format. Oder bezieht sich das nur auf Änderungen an dem Felder (ALTER TABLE....)?

Danke!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz