Diskussion
SQL/PHP: Zahl in Datenbank - Komma durch Punkt
| kekskruemel --- |
Geschrieben am: Fr 13.05.2011, 15:30
|
||
![]() AyomRank 5 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 472 Mitglied seit: 8.11.2005 |
Hallo, ich habe in einer Datenbank Zahlen derzeit mit Komma als Trennung drinstehen, also z.B. als Wert 51,8342 Nun sollen diese Werte bei insgesamt 19.000 Eintragungen ausgetauscht werden durch einen Punkt. Wie kann ich das automatisieren? Gibt es eine gute SQL ANweisung dazu? Ich habe es auch schon mit php probiert, aber da scheint ein Fehler im Code zu sein:
-------------------- |
||
![]() |
| Jürgen Auer Server-Daten - Online-CRM-Lösungen |
#2 Geschrieben am: Fr 13.05.2011, 16:03 (+00:32)
|
|
AyomRank 9 Gruppe: Ehrenmitglied, Ex-Moderator Beiträge: 3657 Mitglied seit: 4.02.2006 |
So etwas würde ich nie so machen.
Abgesehen davon: Existiert das Problem überhaupt? Was ist das in der Datenbank für ein Datentyp? Wenn das ein numerischer ist, dann ist das bloß ein 'Scheinergebnis', das mit der Transformation auf die 'deutsche Darstellung' zusammenhängt. Wenn tatsächlich Zahlen als String mit Komma definiert sind, dann: Eine zweite Textspalte erstellen, da rein per Update die Kommas durch Punkte ersetzen. Eine nummerische Spalte erstellen, da die zweite Textspalte reinkonvertieren. Originalspalte umbenennen, letzte Spalte als Original benennen. Das analog mit der zweiten Spalte. -------------------- Web-Anwendung 3.0: Ein Online-Kalender für Termine vieler Filialen.
Server-Daten - die Single-Data-Solution: Web-Datenbanken als Online - CRM - Lösung. Ihre Geschäftsprozesse entscheiden, was Ihre Online-Datenbank macht. Sie konzentrieren sich auf Ihr Kerngeschäft - Ihre Datenbank funktioniert. |
![]() |
| kekskruemel --- |
#3 Geschrieben am: Fr 13.05.2011, 16:43 (+00:40)
|
![]() AyomRank 5 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 472 Mitglied seit: 8.11.2005 |
Die derzeitigen Spalten sind varchar.
Ich habe keine Ahnung wie du das genau meinst und wie ich das am Besten umsetze. -------------------- |
![]() |
|
#4 Geschrieben am: Fr 13.05.2011, 17:09 (+00:26)
|
|||||
|
AyomRank 9 Gruppe: Moderator, Experte, VIP-Mitglied Beiträge: 2771 Mitglied seit: 27.12.2004 |
Die SQL-Abfragen sollten besser erst getestet werden, da ich es nicht gemacht habe.
Sobald Du nur noch Zahlen mit Punkt drin stehen hast, kannst Du wohl auch das Feld in ein Decimal, Float oder Double ändern, wäre zumindestens sehr sinnig Daten als das zu Speicher, was sie auch sind (und ich denke das meint teilweise auch Jürgen), ggf. musst Du aber diese Daten erst in eine neue Spalte kopieren, danach die alte Löschen und im Anschluss die neue umbenennen. Das vorherige Testen an einen Kopie der DB sollte natürlich selbstverständlich sein.
|
||||
![]() |
| Jürgen Auer Server-Daten - Online-CRM-Lösungen |
#5 Geschrieben am: Fr 13.05.2011, 17:57 (+00:47)
|
||||
|
AyomRank 9 Gruppe: Ehrenmitglied, Ex-Moderator Beiträge: 3657 Mitglied seit: 4.02.2006 |
Das sind Zahlen, also sollten die auch als Zahlen abgespeichert werden. Ich nutze für Geodaten üblicherweise Decimal(18,14) also Dezimalzahlen mit 4 Vorkomma und 14 Nachkommastellen. Ansonsten muß man bei Berechnungen ständig erst die Textdarstellung in nummerische Daten umwandeln. Aber so eine Typumwandlung würde ich nie direkt auf der Spalte machen. Sondern immer über Hilfsspalten gehen, welche die Zwischenwerte aufnehmen:
so als Pseudocode (ich weiß nicht genau, ob die Update-Anweisung bei mySql so ist). Und dann die Spalten umbenennen: longitude -> longitude_old longitude_neu -> longitude Solange man das über zusätzliche Spalten macht, kann man das auch immer auf der 'Originaltabelle' machen, man kann ja die Zusatzspalten wieder rauslöschen. -------------------- Web-Anwendung 3.0: Ein Online-Kalender für Termine vieler Filialen.
Server-Daten - die Single-Data-Solution: Web-Datenbanken als Online - CRM - Lösung. Ihre Geschäftsprozesse entscheiden, was Ihre Online-Datenbank macht. Sie konzentrieren sich auf Ihr Kerngeschäft - Ihre Datenbank funktioniert. |
||||
![]() |
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
![]() |
![]() ![]() ![]() |
| Themen Titel | Autor | Views | Antworten | Letzte Aktion |
| Marketing durch Facebook Fanpages? | Artjom | 1485 | 12 | Do 20.12.2012, 13:46 |
| Mehrdimensionale Datenbank | Piero50 | 482 | 3 | Do 20.09.2012, 12:29 |
| Linkaufbau durch Google Alerts | Michael Schöttler | 1601 | 7 | Mo 10.09.2012, 10:54 |
| 1000 Backlinks durch zwei Kommentare? | Maju | 1592 | 4 | Do 28.06.2012, 15:39 |
| Datenbank in der Cloud | G.P. | 504 | 4 | Di 5.06.2012, 08:27 |
| Weiteren Blog durch eigenen pushen? | Ronny84 | 755 | 5 | Mo 21.05.2012, 01:05 |
| Wie findet man heraus, durch welche Keywords | Sancheck | 1609 | 10 | Do 10.05.2012, 11:54 |
| Ad-Sense - Noch Abzug vom Guthaben durch google? | StephanBo | 1157 | 6 | Do 26.04.2012, 17:29 |
| Rechnungsmenge durch Onlineshop | Ronald Nickel | 1173 | 4 | Mo 9.01.2012, 18:55 |
Neu: Kleinanzeige pinnen | Kleinanzeige auf Startseite | Werbetarife 2013 | VIP Mitgliedschaft (30 Tage Geld-zurück-Garantie)
















