INSERT INTO en une seule action le contenu de de la cellule

Matrhieu
Invité n'ayant pas de compte PHPfrance

24 mai 2005, 12:14

Bonjour

Jai une table avec une dizaine de colonnes dont une: --numéro-- INT PRIMARY KEY
pour l'instant je n'ai pas encore d'enregistrement dans cette table et je voudrais remplir a l'avance les cellules de la colonne --numéro--
Quelle est la syntaxe de INSERT INTO TABLE pour remplir toutes les cellules de cette colonne en une seule action?
si je dois le faire un par un cela va prendre du temps même avec phpmyadmin !

Peut être est-ce possible lorsque je créer la table avec CREATE TABLE ?

Merci de vos réponses
Mathieu

Mammouth du PHP | 19672 Messages

24 mai 2005, 12:29

Il faut que lors de la création de ta table tu mettes ce champ en auto_imcrement. tu n'auras alors pas besoin de préciser le contenu pour cette colonne lors de l'insertion, une numérotation automatique se fera.

Pour insérer plusieurs valeurs à la fois sur une ligne, tu fais:

Code : Tout sélectionner

INSERT INTO `table` (`champ_1`, `champ_2`, ..., `champ_n`) VALUES ('valeur_1', 'valeur_2', ...,'valeur_n');
À noter que les valeurs en chaine de caractères doivent être entre apostrophes (ou entre guillemets) alors que les valeurs numériques n'ont pas besoin d'être protégées.

Attention aussi pour les chaines de caractères: si tu as une apostrophe dans la chaine, il faut l'échapper avec un backslash: 'valeur d\'une colonne'
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mathieu
Invité n'ayant pas de compte PHPfrance

24 mai 2005, 12:53

Merci Cyrano
Je cherche plutôt a insérer plusieurs valeurs a la fois sur une seule colonne

@plus
Mathieu

Mammouth du PHP | 19672 Messages

24 mai 2005, 12:57

Code : Tout sélectionner

INSERT INTO `table` (`champ_1`, `champ_2`, ..., `champ_n`) VALUES ('valeur_1', 'valeur_2', ...,'valeur_n'), ('valeur_1', 'valeur_2', ...,'valeur_n'), ('valeur_1', 'valeur_2', ...,'valeur_n');
La même mais sur trois lignes successives.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mathieu
Invité n'ayant pas de compte PHPfrance

24 mai 2005, 13:18

Merci Cyrano :-)

ça marche

voici ce j'ai fait pour ne remplir qu'une colonne:
INSERT INTO $nomtable (numero) VALUES (101), (102), (103), (104)

àplus
Bises a Roxanne

Mammouth du PHP | 19672 Messages

24 mai 2005, 13:37

excellent,
Pour Roxanne, je lui transmettrai... si jamais je la rencontre un jour :langue:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: