Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2005 Teil von Oktober

SELFHTML Forumsarchiv
Feldreihenfolge in mySQL ändern

Informationsseite
  1. Seite (DATENBANK) Feldreihenfolge in mySQL ändern von Sebastian Becker, 30. 10. 2005, 21:54
nach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: Sebastian Becker, 30. 10. 2005, 21:54

Hallo,

wie kann ich mit üblichen Hilfsmitteln wie z.B. phpMyAdmin die Reihenfolge der Felder einer mySQL-Datenbank ändern - so soll z.B. die ID an die erste Stelle wandern.

Ich weiß, daß dies für die Funktionalität unerheblich ist - es macht die Sache aber übersichtlicher und das Handling einfacher.

Eine automatische alphabetische Sortierung würde auch reichen ...

Danke für alle Hinweise, Grüße,

Sebastian Becker

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: Christian Kruse, 30. 10. 2005, 21:57

你好 Sebastian,

»» wie kann ich mit üblichen Hilfsmitteln wie z.B. phpMyAdmin die
»» Reihenfolge der Felder einer mySQL-Datenbank ändern - so soll z.B.
»» die ID an die erste Stelle wandern.

Neu anlegen.

»» Ich weiß, daß dies für die Funktionalität unerheblich ist - es macht
»» die Sache aber übersichtlicher und das Handling einfacher.

Ansichtssache…

再见,
 克里斯蒂安

--
Neue Hardware eingebaut | Der dritte mir bekannte Block-Nutzer
Die Summe zweier gerade Primzahlen ist immer eine Quadratzahl.

http://wwwtech.de/

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: Sebastian Becker, 30. 10. 2005, 22:05

你好, 克里斯蒂安,

»» Neu anlegen.

also ich habe jetzt einen Dump mit der alten Reihenfolge. Wenn ich jetzt die Datenbank mit der gewünschten Feldreihenfolge neu anlege und den Dump importiere, bleibt also die neue Feldreihenfolge erhalten? Das wäre dann eine Lösung - aber umso umständlicher, je mehr Felder man hat.

Geht es nicht einfacher? Eine Option zum Verschieben von Feldern wäre auch in phpMyAdmin nicht schlecht. Gibt es kein Tool, das sowas kann?

Danke, Grüße,

Sebastian

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: Christian Kruse, 30. 10. 2005, 22:19

你好 Sebastian,

»» »» Neu anlegen.
»»
»» also ich habe jetzt einen Dump mit der alten Reihenfolge. Wenn ich jetzt
»» die Datenbank mit der gewünschten Feldreihenfolge neu anlege und den
»» Dump importiere, bleibt also die neue Feldreihenfolge erhalten?

Natürlich.

»» Geht es nicht einfacher? Eine Option zum Verschieben von Feldern wäre
»» auch in phpMyAdmin nicht schlecht. Gibt es kein Tool, das sowas kann?

Das scheitert daran, dass MySQL das nicht kann.

再见,
 克里斯蒂安

--
Neue Hardware eingebaut | Der dritte mir bekannte Block-Nutzer
Wer sich zu überschwänglich freut, wir später Grund zum Weinen haben.

http://wwwtech.de/

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: Sebastian Becker, 30. 10. 2005, 22:35

你好, 克里斯蒂安,

»» Natürlich.

Also meine aus dem Dump der alten Datenbank stammenden INSERTS sehen jetzt im Prinzip so aus ...

INSERT INTO `gallery` VALUES ('Strasse 1', 'Vorname 1', 'Ort 1', 'Name 1');
INSERT INTO `gallery` VALUES ('Strasse 2', 'Vorname 2', 'Ort 2', 'Name 2');
...

Die neue Reihenfolge soll aber lauten ...

'Name', 'Vorname', 'Ort', 'Strasse'

Jetzt habe ich ein Problem: Die Werte werden in die falschen Felder eingesetzt - wat nu?

Danke, Grüße,

Sebastian

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: Mero, 30. 10. 2005, 22:50

»» 你好, 克里斯蒂安,
»»
»» »» Natürlich.
»»
»» Also meine aus dem Dump der alten Datenbank stammenden INSERTS sehen jetzt im Prinzip so aus ...
»»
»» INSERT INTO `gallery` VALUES ('Strasse 1', 'Vorname 1', 'Ort 1', 'Name 1');
»» INSERT INTO `gallery` VALUES ('Strasse 2', 'Vorname 2', 'Ort 2', 'Name 2');
»» ...
»»
»» Die neue Reihenfolge soll aber lauten ...
»»
»» 'Name', 'Vorname', 'Ort', 'Strasse'
»»
»» Jetzt habe ich ein Problem: Die Werte werden in die falschen Felder eingesetzt - wat nu?
»»
»» Danke, Grüße,
»»
»» Sebastian

Reihenfolge ändern, bzw im Insert-into bei der Tabelle auch angeben.

Insert into gallery(name,vorname,ort,strasse)
select name,vorname,ort,strasse from oldgallery;

Das Select am Schluss erspart dir den Käs mit den ganzen Values. Ein Statement für alle Einträge, statt ein Statement pro Eintrag.

MfG
Mero

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: dedlfix, 30. 10. 2005, 22:20

echo $begrüßung;

»» wie kann ich mit üblichen Hilfsmitteln wie z.B. phpMyAdmin die Reihenfolge der Felder einer mySQL-Datenbank ändern

Hast du schon mal im MySQL-Handbuch nachgesehen, ob der MySQL-Dialekt eine solche Möglichkeit bietet?


echo "$verabschiedung $name";

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: Sebastian Becker, 30. 10. 2005, 22:42

Hallo, dedlfix,

»» Hast du schon mal im MySQL-Handbuch nachgesehen, ob der MySQL-Dialekt eine solche Möglichkeit bietethttp://dev.mysql.com/doc/refman/5.0/en/alter-table.html

Ja, und mySQL sieht diese Möglichkeit wohl nicht vor - daher suche ich nach einer Methode, um diese fehlende Funktionalität zu ersetzen.

Ich könnte ja zum Beispiel einen CSV-Dump machen, die Felder in Excel verschieben und die Daten dann wieder nach mySQL schaufeln.

Leider kann phpMyAdmin aber so viel ich weiß keine CSV-Dateien importieren ...

Any ideas?

Danke, Grüße,

Sebastian

nach obennach unten

Feldreihenfolge in mySQL ändern

Die folgende Nachricht zum Thema stammt von: dedlfix, 30. 10. 2005, 23:01

echo $begrüßung;

»» »» Hast du schon mal im MySQL-Handbuch nachgesehen, ob der MySQL-Dialekt eine solche Möglichkeit bietet?
»»
»» Ja, und mySQL sieht diese Möglichkeit wohl nicht vor

Dann hast du das Handbuch nicht oder nicht richtig gelesen.

ALTER TABLE tbl_name MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]

Das Handbuch sagt zwar was von "ab MySQL 5.0 möglich", ein Userkommentar behauptet jedoch dass es schon seit 4.0.1 möglich ist. Das bestätigt auch das gleiche Kapitel in einer ältere Version des Handbuchs.


echo "$verabschiedung $name";

nach obennach unten

Hat geklappt, Danke! Lösungsweg ...

Die folgende Nachricht zum Thema stammt von: Sebastian Becker, 30. 10. 2005, 23:42

Hallo,

Dank der eingegangenen Hinweise hat es jetzt geklappt (Lösungsweg siehe unten), Danke!

Grüße,

Sebastian



# Change the Order of Columns in a Table
# http://dev.mysql.com/doc/refman/5.0/en/change-column-order.html

CREATE TABLE `new_gallery` (
  `id` int(11) NOT NULL auto_increment,
  `file_name` varchar(50) default NULL,
  `object_name` varchar(50) default NULL,
  `description_1` varchar(50) default NULL,
  `description_2` varchar(255) default NULL,
  `metatext` varchar(50) default NULL,
  `object_name_en` varchar(50) default NULL,
  `description_1_en` varchar(50) default NULL,
  `description_2_en` varchar(50) default NULL,
  `metatext_en` varchar(50) default NULL,
  `object_name_tk` varchar(50) default NULL,
  `description_1_tk` varchar(50) default NULL,
  `description_2_tk` varchar(50) default NULL,
  `metatext_tk` varchar(50) default NULL,
  `category` varchar(50) default NULL,
  `object_width` int(11) default '0',
  `object_height` int(11) default '0',
  `object_length` int(11) default '0',
  `mm` int(11) default '0',
  `price_euro` varchar(50) default NULL,
  `sold` int(11) default '0',
  `made_year` int(11) default '0',
  `photographer` varchar(50) default NULL,
  `sequence` int(11) default '0',
  `publish` int(11) default '0',
  KEY `ID` (`id`)
) TYPE=MyISAM;

INSERT INTO `new_gallery` SELECT `id`, `file_name`, `object_name`, `description_1`, `description_2`, `metatext`, `object_name_en`, `description_1_en`, `description_2_en`, `metatext_en`, `object_name_tk`, `description_1_tk`, `description_2_tk`, `metatext_tk`, `category`, `object_width`, `object_height`, `object_length`, `mm`, `price_euro`, `sold`, `made_year`, `photographer`, `sequence`, `publish` FROM `gallery`;

DROP TABLE `gallery`;

ALTER TABLE `new_gallery` RENAME `gallery`;

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2005 Teil von Oktober

© 1998-2006 Seite Impressum, Software: Classic Forum