dedlfix: problem mit textcodierung!

Beitrag lesen

Hi!

die von mir eingerichtete tabelle steht auf utf-8, die datenbank selbst aber auf "latin1_swedish_ci". was für auswirkungen hat es, wenn die db als ganzes  latin1_swedish_ci ist, die tabelle aber utf-8? ist nicht die tabelle "wichtiger?"

Nein, nur die Einstellung jedes einzelnen Feldes zählt. Der Datenbankwert hat außer seiner Defaultwerteigenschaft nur noch dann eine Bedeutung, wenn man statt SET NAMES ein SET CHARACTER SET verwendet. Aber letzteres benötigt man normalerweise nicht, und sollte es auch nicht verwenden, wenn man seine Auswirkungen nicht kennt.

Du kannst aber diesen Wert umstellen, wenn du willst. Beispielsweise über den phpMyAdmin die Datenbank anwählen und dort im Reiter Operationen.

ich habe also eine db und einen db-server in der falschen codierung. in phpMyAdmin läßt sich das aber nicht ändern. ist das eine sache für den server-admin, oder kann ich das doch selbst beeinflussen? muß ich das dann in jeder datei tun, oder kann ich das global umstellen?

Diese Defaultwerte brauchen dich nicht zu kümmern, wenn du explizit nach dem Verbindungsaufbau die für diese Verbindung zu verwendende Kodierung aushandelst. Zusammen mit den Feldkodierungseinstellungen sind das eigentlich die zwei für den Endanwender zu beachtenden Dinge.

wie schätzt du das ein, meinst du, dass wir da den fehler in der db entdeckt haben?

Kann gut sein. Stell einfach nur die Feldkodierung und die Verbindungskodierung ein, und alles sollte gut werden. Jedenfalls was die Datenbankkommunikation und Speicherung anbelangt und wenn du ihr nach der Verbindungskodierungaushandlung auch tatsächlich UTF-8-kodierte Daten sendest.

Lo!