php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.05.2007, 09:24  
Neuer Benutzer
 
Registriert seit: 28.04.2007
Beiträge: 21
Carino
Standard MySQL Query zum Ersetzen von sonderbaren Umlauten

Hallöle,

ich versuche gerade über MySQL bestimmte Inhalte zu ersetzen. Eigentlich sollte der Query funktionieren, nur bekomme ich einen Fehler:

UPDATE `smf_members` SET `personalText` = replace(personalText, `´`, `'`);

das ' könnte man im Notfall auch komplett entfernen, aber deswegen meckert er ja net.

Ich bekomme dann den Fehler:

#1054 - Unknown column '´' in 'field list'
Carino ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.05.2007, 10:54  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Die Spalte ist nicht verhanden.
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline   Mit Zitat antworten
Alt 14.05.2007, 11:10  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

http://dev.mysql.com/doc/refman/4.1/...nction_replace

Was möchtest du denn da für eine komische Ersetzung machen. Möchtest du Zeichensätze konvertieren?

REPLACE (ich empfehle alles, was SQL ist, GROSS zu schreiben) erwartet Strings oder existierende Spalten als Parameter.

`deklariert einen String als Spalte, ´ ist keine solche Spalte, du meinst wohl eher den String-Wert. Diesen musst du dann mit ' eingrenzen.
Zergling-new ist offline   Mit Zitat antworten
Alt 14.05.2007, 11:41  
Neuer Benutzer
 
Registriert seit: 28.04.2007
Beiträge: 21
Carino
Standard

Oje
Also ich habe die Datenbank "lelafe" und die Tabelle "smf_members".
Dort gibt es das Feld "personalText". Innerhalb dieses Feldes sind Einträge drin die einer unglücklichen Konvertierung zum Opfer gefallen sind.

Deshalb möchte ich die Textelemente z.B.

"Hier gibt´s was zu lachen" ändern in "Hier gibt's was zu lachen", betroffen sind jedoch nur das eine Satzzeichen >> ' <<, was leider noch >> ´ << heisst

Wie muss ich die Zeile ändern, damit das besser klappt?
Danke im Voraus!!!
Carino ist offline   Mit Zitat antworten
Alt 14.05.2007, 12:56  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.654
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo Carino,

warum verwendest du keine Zeichensatz-Kodierungs-Funktionen? ich würde an deiner Stelle analysieren, welcher Quell-Zeichensatz das ist (ich vermute ein Mehrbyte-Zeichensatz, weil ein Zeichen durch zwei repräsentiert wird) und würde diesen nach Ziel-Zeichensatz konvertieren. Man kann hierfür sicher ein Update-Skript schreiben - vielleicht sogar komplett in SQL.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 14.05.2007, 13:03  
Neuer Benutzer
 
Registriert seit: 28.04.2007
Beiträge: 21
Carino
Standard

Hallo Dr.e. schön dich zu lesen.
Grundsätzlich hast du recht. Aber ich habe alle Zeichen bereits ersetzt und es geht nur noch um etwa 400 einträge mit diesem Zeichen, da dachte ich, wäre das die einfachste Lösung, die selbst ich verstehe
Carino ist offline   Mit Zitat antworten
Alt 14.05.2007, 13:25  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.654
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo Carino,

Zitat:
Hallo Dr.e. schön dich zu lesen.
Gerne doch...

Zitat:
Grundsätzlich hast du recht. Aber ich habe alle Zeichen bereits ersetzt und es geht nur noch um etwa 400 einträge mit diesem Zeichen, da dachte ich, wäre das die einfachste Lösung, die selbst ich verstehe Smile
Die Schwierigkeit besteht an dieser Stelle einfach darin, dass die Zeichen in unterschiedlichen Codierungen anders angezeigt werden und dass unterschiedliche Programme damit unterschiedlich umgehen. Will heißen, dass deine REPLACE()-Aktion evtl. ins Höschen geht, weil der String, den du suchen lässt in der Codierung nicht passt. Such in der DB einfach mal nach dem String und vergewissere dich, dass er auch gefunden wird.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 14.05.2007, 13:47  
Neuer Benutzer
 
Registriert seit: 28.04.2007
Beiträge: 21
Carino
Standard

hab ja vorher nen select gemacht und wird auch angegeben.
habe das ergebnis kontrolliert und es sind tatsächlich NUR diese "konstrukte".
Carino ist offline   Mit Zitat antworten
Alt 14.05.2007, 13:49  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.654
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

OK, dann ist das Problem also gelöst?
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 14.05.2007, 13:55  
Neuer Benutzer
 
Registriert seit: 28.04.2007
Beiträge: 21
Carino
Standard

hm ne. der fehler kommt ja beim update, nicht beim select.
das zeichen findet er, aber die REPLACE Funktion scheint falsch zu sein.

UPDATE `smf_members` SET `personalText` = replace(personalText, `´`, `'`);

In dem Fall soll personalText die Spalte sein, nicht ´
Carino ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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 an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mysql query browser + umlaute gugu Datenbanken 10 28.03.2009 19:15
Mysql Query mitloggen cycap Datenbanken 1 03.04.2006 21:36
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
MySql: Suchen und ersetzen Problem faragerri Datenbanken 5 02.03.2006 15:20
MySQL Query Browser c01001 Datenbanken 6 14.01.2006 22:13
Lost connection to MySQL server during query in ... ? Alpha Centauri Datenbanken 0 24.10.2005 11:09
verschiedene Query Ergebnisse in MySQL 4.0.x und 4.1.x Datenbanken 3 18.09.2005 15:57
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Lost connection to MySQL server during query bicpi PHP-Fortgeschrittene 17 02.08.2005 11:42
mysql_query meldet Fehler, MySQL Query Browser nicht Datenbanken 3 04.05.2005 17:15
mysql query... alle datensäze älter als x tage löschen... Sclot Datenbanken 2 05.03.2005 23:04
[Erledigt] Datenbank im MySQL Query Browser PHP Tipps 2005 0 07.02.2005 13:54
mysql query fehler Datenbanken 6 19.01.2005 23:44
platzhalter in query ersetzen flyingeagle Datenbanken 4 12.01.2005 10:40
mysql update query mit mehreren Tabellen funktioniert nicht PHP-Fortgeschrittene 5 08.01.2005 16:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql umlaute ersetzen, http://www.php.de/datenbanken/44038-mysql-query-zum-ersetzen-von-sonderbaren-umlauten.html, mysql select zeichen ersetzen, sql umlaute ersetzen, sql umlaute umwandeln, mysql select umlaute ersetzen, mysql replace umlaute, mysql umlaute umwandeln, mysql replace umlaute tool, php umlaute in mysql ã â, mysql query umlaute ersetzen, query umlaute ersetzen, mysql umlaute konvertieren, mysql suchen ersetzen ü ä, mit mysql query einzelne zeichen ersetzen, mysql query ersetzen, mysql spaltennamen mit umlauten, mysql sonderzeichen konvertieren, mysql sonderzeichen entfernen, sql command replace umlaut

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:20 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.