Aller au contenu

Ajouter une colonne en première position


Sujets conseillés

Posté

Bonjour

Jai besoin dajouter une colonne, nommée espace, dans une table MySql en première position ; jutilise MySqlAdmin.

Apparemment, ça nest pas possible ; jai donc ajouté provisoirement cette nouvelle colonne en deuxième position.

Ensuite, jai essayé, avec Opérations de MySqlAdmin, de modifier lordre des colonnes en faisant « monter » cette deuxième colonne nouvelle en première position, avec :

ALTER TABLE `compteur` ORDER BY `espace`

sans succès.

Jai aussi essayé linverse, faire « descendre » la première colonne, nommée repertoire, en deuxième position.

ALTER TABLE `compteur` ORDER BY `repertoire` DESC

sans succès.

Merci par avance de vos conseils.

PS: comme ma nouvelle colonne est vide, je peux la supprimer et tout recommencer autrement.

Francois

Posté

Pourquoi veux tu spécialement la mettre en première position ?

ALTER TABLE `matable` ADD `nouvelleColonne` VARCHAR( 10 ) NOT NULL FIRST ;

Une fois créée, je ne pense pas qu'on puisse la changer de place.

Posté

sinon, un petit "bidouillage"

- renommer la colonne,

- en créer une nouvelle avec le bon nom

- recopier l'ancienne vers la nouvelle

- supprimer l'ancienne

Autre solution, c'est de faire un export sql avec create table et modifier l'ordre des colonnes avant l'insertion. En n'oubliant pas de faire des insertions complètes, sinon l'ordre des champs ne correspondra plus

Posté

bonjour et merci de vos réponses.

Oui, je n'ai pas un besoin absolu de la mettre en première position.

Simplement, j'ai essayé, je n'avais jamais rencontré ce cas là, et je n'y suis pas arrivé.

En faisant l'hypothèse, fausse apparemment, que c'était possible, je me suis dit qu'il me manquait la bonne information.

J'ai donc mis ce post.

Je peux parfaitement vivre avec la colonne là où elle est, surtout maintenant que je sais que ça n'en vaut pas la peine.

Merci de vos réponses.

Francois

  • 2 months later...
Posté

Bonjour,

Les fabricants de sgdb ne prévoient pas la possibilité de définir un ordre pour les colonnes, car ceci n'a aucun sens dans la logique sous jacente au modèle relationnel... En effet, et juste pour donner une illustration, les deux propositions suivantes sont strictement equivalentes:

Je m'appelle jérôme et j'ai 27 ans.

J'ai 27 ans et je m'appelle jérôme.

J'espère que cela aura pu t'aider!

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...