Insertion de plusieurs valeurs dans un champ de base de donnés

cs_asma87 Messages postés 6 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 12 avril 2010 - 12 avril 2010 à 01:15
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 - 13 avril 2010 à 18:36
Bonsoir tout le monde,
Je veux inserer des valeurs dans un id allons de 1->4092 et je sais pas si il y a une requete qui me permet cela. Aidez moi svp

7 réponses

cs_cybertoc Messages postés 7 Date d'inscription mardi 5 août 2003 Statut Membre Dernière intervention 12 avril 2010
12 avril 2010 à 10:31
Je pense que la methode la plus simple sera de preparer tes donnees en PHP code et de les transmettre au SQL avec le moins de requetes possibles. Pourrais tu etre plus explicite sur le probleme?


SSDD CIV Represent
0
cs_asma87 Messages postés 6 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 12 avril 2010
12 avril 2010 à 10:57
Bonjour,
j'ai une liste déroulante des id mais je veux que cette liste me donne le choix entre des id allons de 1 à 4094. Donc je est ce que je peux inserer 4094 id par une seule commande puisque ça demande bcp de temps pour l'insertion de chaque id séparé.
merci
0
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 1
12 avril 2010 à 14:06
Oui, c'est possible la seule condition est je pense, d'avoir PHP 5...

La table doit être vide...

on va utiliser la requête suivante comme exemple :

pour un enregistrement :

$req = "INSERT INTO table ('id') VALUES ('')";


pour 4094 enregistrements :

$req = "INSERT INTO table ('id') VALUES ";

for($i = 0 ; $i < 4094 ; $i++){

    $req .= "('.$i.'),";
}

$req = substr($req, 0 ,strlen($req) - 1); // Supprime la dernière virgule.


Ensuite tu exécutes la requête via l'inteface pdo de php5;

La requête ne s'effectuera qu'une seule fois mais inscrira plusieurs entrées dans la table.

PS: je ne pense pas que ça marche avec mysql_query();

Sinon, tu affiches le résulat de $req à l'écran et tu le copie colle dans phpmyadmin (ou autre) dans l'onglet sql de ta table.

ça devrais fonctionner.

Bien à toi.
0
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 1
12 avril 2010 à 14:07
pardon

for($i = 1 ; $i < 4095 ; $i++)

sinon l'id 1 sera 0
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 1
12 avril 2010 à 14:13
Ha suis vraiment une bi.. lol

Pardon, j'avais pas testé mon code...

c'est la bonne version...

$req = "INSERT INTO table ('id') VALUES ";

for($i = 1 ; $i < 4095 ; $i++){

    $req .= "('".$i."'),";
}

$req = substr($req, 0 ,strlen($req) - 1); // Supprime la dernière virgule.


et ca te donne un truc comme ca :

INSERT INTO table ('id') VALUES ('1'),('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9'),('10'),('11'),('12'),('13'),('14'),('15'),('16'),('17'),('18'),('19'),('20'),('21'),('22'),('23'),('24'),('25'),('26'),('27'),('28'),('29'),('30'),('31'),('32'),('33'),('34'),('35'),('36'),('37'),('38'),('39'),('40'),('41'),('42'),('43'),('44'),('45'),('46'),('47'),('48'),('49'),('50'),('51'),('52'),('53'),('54'),('55'),('56'),('57'),('58'),('59'),('60'),('61'),('62'),('63'),('64'),('65'),('66'),('67'),('68'),('69'),('70'),('71'),('72'),('73'),('74'),('75'),('76'),('77'),('78'),('79'),('80'),('81'),('82'),('83'),('84'),('85'),('86'),('87'),('88'),('89'),('90'),('91'),('92'),('93'),('94'),('95'),('96'),('97'),('98'),('99'),('100'),('101'),('102'),('103'),('104'),('105'),('106'),('107'),('108'),.....

Bien entendu, c'est un exemple, avec une seule colonne nommée id dans la table...

Si tu as d'autre colonnes, tu dois mettre '' exemple pour deux colonne :

INSERT INTO table ('id') VALUES ('1', ''),('2', ''),...
0
cs_asma87 Messages postés 6 Date d'inscription lundi 26 janvier 2009 Statut Membre Dernière intervention 12 avril 2010
12 avril 2010 à 16:43
Bonjour moi je travaille avec php5.3 intégré en serveur wamp j'ai essayé la requette mais ça n'a rien donné??
0
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 1
13 avril 2010 à 18:36
Ensuite tu exécutes la requête via l'inteface pdo de php5;

La requête ne s'effectuera qu'une seule fois mais inscrira plusieurs entrées dans la table.

PS: je ne pense pas que ça marche avec mysql_query();

Sinon, tu affiches le résulat de $req à l'écran et tu le copie colle dans phpmyadmin (ou autre) dans l'onglet sql de ta table.

ça devrais fonctionner.

Bien à toi.
0
Rejoignez-nous