Insérer un zéro initial sur tous mes champs

VaN
Mammouth du PHP | 1107 Messages

29 mai 2009, 20:21

Bonjour,

j'aimerai ajouter un zéro initial dans un champs, mais je ne trouve pas comment, faire directement en SQL. Pourtant, je suis quasiment sur que c'est possible.

Voici quelques lignes de la table en question :

Code : Tout sélectionner

CREATE TABLE `cities_2` ( `city_id` int(11) NOT NULL auto_increment, `city_name` varchar(200) NOT NULL, `city_zipcode` varchar(10) NOT NULL, `city_statut` tinyint(4) NOT NULL, PRIMARY KEY (`city_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=37535 ; -- -- Contenu de la table `cities_2` -- INSERT INTO `cities_2` (`city_id`, `city_name`, `city_zipcode`, `city_statut`) VALUES (1, 'Abergement-Clémenciat (L'')', '1400', 1), (2, 'Abergement-Clémenciat (L'')', '1400', 1), (3, 'Abergement-de-Varey (L'')', '1640', 1), (4, 'Ambérieu-en-Bugey', '1500', 1), (5, 'Ambérieux-en-Dombes', '1330', 1), (6, 'Ambléon', '1300', 1),
et j'aimerai donc arriver à ce resultat :

Code : Tout sélectionner

INSERT INTO `cities_2` (`city_id`, `city_name`, `city_zipcode`, `city_statut`) VALUES (1, 'Abergement-Clémenciat (L'')', '01400', 1), (2, 'Abergement-Clémenciat (L'')', '01400', 1), (3, 'Abergement-de-Varey (L'')', '01640', 1), (4, 'Ambérieu-en-Bugey', '01500', 1), (5, 'Ambérieux-en-Dombes', '01330', 1), (6, 'Ambléon', '01300', 1)
Comment faire cela ?

Mammouth du PHP | 1511 Messages

29 mai 2009, 21:10

Il faut utiliser les valeurs par défaut. Jette un oeil du coté de la doc mysql.

Mammouth du PHP | 2937 Messages

30 mai 2009, 12:12

Jette un oeil du coté de la doc mysql.
Qui parle, notamment, de l'option ZEROFILL pour les types numériques.

Essaie cette requête SQL pour éditer la colonne city_zipcode :

Code : Tout sélectionner

ALTER TABLE cities_2 MODIFY city_zipcode INT(5) ZEROFILL
Lors d'une (re)création de table, cela donne ça :

Code : Tout sélectionner

CREATE TABLE `cities_2` ( `city_id` int(11) NOT NULL auto_increment, `city_name` varchar(200) NOT NULL, `city_zipcode` int(5) ZEROFILL NOT NULL, `city_statut` tinyint(4) NOT NULL, PRIMARY KEY (`city_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

VaN
Mammouth du PHP | 1107 Messages

31 mai 2009, 17:58

Essaie cette requête SQL pour éditer la colonne city_zipcode :

Code : Tout sélectionner

ALTER TABLE cities_2 MODIFY city_zipcode INT(5) ZEROFILL
Ca marche. merci.