Veröffentlicht 5. März 200619 j Hallo, wegen eines Updates muss ich bei meiner DB zwei Spaltern vertauschen also X1,X2,X3,X4 nach X3,X4,X1,X2 Gibt es einen MySQL Befehl dafür oder müsste ich die komplette DB auslesen und in eine neue eintragen? Danke und Gruß S8
5. März 200619 j Also ich verstehe deine Frage nicht so richtig. Denn was hat den die Anordnung der Spalten in einer Tabelle mit einem Update zu tun? Vielleicht versuchst du das mal etwas genauer zu erläutern.
5. März 200619 j Okay... Ich nutze eine Bilderdatenbank die ich wegen Umstieg auf ein anderes CMS akutalisieren muss. Dafür spiele ich die neuste Version ein, und um die nutzen zu können muss ich zwei Spalten wie oben beschrieben tauschen, sonst klappt das Update nicht.
5. März 200619 j Ändert aber nicht an der Tatsache das man nicht erkennen kann wo da der sinn sein soll. Wenn du ein "SELECT id,name,foto FROM tabelle WHERE 1", dann bekommst du die ergebnisse in der Reinfolge id-name-foto, auch wenn die reinfolge in der die Tabellen mal angelegt worden sind name-foto-id ist.
6. März 200619 j Für die Datenbank ist die Reihenfolge der Spalten doch total egal oder ?Im Prinzip ja! Kritisch wird es nur bei schlampig programmierten Anwendungen, die erst mit select * auf die Tabelle zugreifen und sich dann darauf verlassen, dass die Felder in einer bestimmten Reihenfolge drinstehen würden.
6. März 200619 j Im Prinzip ja! Kritisch wird es nur bei schlampig programmierten Anwendungen, die erst mit select * auf die Tabelle zugreifen und sich dann darauf verlassen, dass die Felder in einer bestimmten Reihenfolge drinstehen würden. Sowas sollte man ja auch nicht nutzen!!!
6. März 200619 j Sowas sollte man ja auch nicht nutzen!!!Hab ich das behauptet? Nee, vielmehr hab ich einen Hinweis gegeben, warum man sich "sowas" gar nicht erst angewöhnen sollte. Und ich sprech da aus leidlicher Erfahrung:hells:
6. März 200619 j Sorry, war wohl missverständlich von mir formuliert.... Ich meinte, so wie du, dass man so niemals programmieren sollte... Desweiteren sollte man soche Produkte meiden, die so programmiert wurden, weil dass sicherlich nicht die einzige schlampigkeit da drin ist!
6. März 200619 j Hallo, Beitrag 4 hilft mir schomal weiter, damit kann ich die Inhalte der DB sortiert ausgeben lassen. Leider benötige ich diese Inhalte nur noch in einer SQL-Datei (wie bei phpMyAdmin die Export Funktion), wie bekomme ich das hin? S8
6. März 200619 j Leider benötige ich diese Inhalte nur noch in einer SQL-Datei (wie bei phpMyAdmin die Export Funktion), wie bekomme ich das hin?mysqldump dürfte Dein Freund werden;)
6. März 200619 j Super, nur habe ich leider keine Freunde.... Nun brauche ich nur noch die Möglichkeit, meinen MySQL Befehl zum auslesen der einzelnen Spalten mit dem MySQLdump zu kombinieren, weil wie ich das bisher verstanden habe, ist genau das mein Problem... S8
7. März 200619 j Super, nur habe ich leider keine Freunde.... Naja, mit SELECT INTO OUTFILE hast du einen weiteren Freund gewonnen
7. März 200619 j wegen eines Updates muss ich bei meiner DB zwei Spaltern vertauschen also X1,X2,X3,X4 nach X3,X4,X1,X2 Gibt es einen MySQL Befehl dafür oder müsste ich die komplette DB auslesen und in eine neue eintragen? INSERT INTO foo VALUES (1,"bar","blubb","lorem ipsum"); SELECT * FROM foo; +--------+--------------+--------------+--------------+ | foo_id | foo_content1 | foo_content2 | foo_content3 | +--------+--------------+--------------+--------------+ | 1 | bar | blubb | lorem ipsum | +--------+--------------+--------------+--------------+ ALTER TABLE foo CHANGE COLUMN foo_content1 foo_content1 varchar(128) AFTER foo_content2; SELECT * FROM foo; +--------+--------------+--------------+--------------+ | foo_id | foo_content2 | foo_content1 | foo_content3 | +--------+--------------+--------------+--------------+ | 1 | blubb | bar | lorem ipsum | +--------+--------------+--------------+--------------+ War das vielleicht gewünscht?
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.