[PHP] boucle pour maj données postgres

Fermé
lamia2 Messages postés 8 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 17 août 2005 - 5 août 2005 à 10:51
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 - 29 janv. 2008 à 14:30
Bonjour,

Je cherche à insérer des données dans une table (PostGres) via un script php, en utilisant une boucle pour numéroter de façon auto. les lignes de 1 à n. Mais cela ne marche pas. Quelqu'un pourrait-il m'éclairer ? MERCI

//creation table test :
pg_exec($conn_db, CREATE TABLE test
(numero INT,
(titre VARCHAR (20))");
//maj de la table test :
for ($j=1; $j<10; $j==);
pg_exec($con_db, "INSERT INTO $test[numero] VALUES ($j)");
pg_close...
A voir également:

4 réponses

lamia2 Messages postés 8 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 17 août 2005
5 août 2005 à 10:58
Sorry, il y avait une erreur dans mon 1er message.
Voici ce qui ne marche pas :

//creation table test :
pg_exec($conn_db, CREATE TABLE test
(numero INT,
(titre VARCHAR (20))");
//maj de la table test :
for ($j=1; $j<10; $j++);
pg_exec($con_db, "INSERT INTO $test[numero] VALUES ($j)");
pg_close...
0
ceddec Messages postés 148 Date d'inscription dimanche 31 juillet 2005 Statut Membre Dernière intervention 10 mars 2012 82
5 août 2005 à 17:40
Bonjour,

Je n'ai jamais utilisé postgre mais il y a un point qui me semble faux :
Ta requete est
INSERT INTO $test[numero] VALUES ($j)
alors que normalement je pense que ça doit être :
INSERT INTO test (numero) VALUES ($j)
0
svp j chercher code source ou document en php qui permit la connection avec base oracle 10j...
Merci
0
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
29 janv. 2008 à 14:30
Je ne connais pas beaucoup Postgre qui ne supporte apparement pas la propriété AUTO_INCREMENT.
Ceci dit, il y'a une propriété SERIAL qui est similaire.
https://www.postgresql.org/docs/8.1/datatype.html#DATATYPE-SERIAL

En gros, ca fait que chaque enregistrement dans ta table aura pour valeur de ta colonne numero, un chiffre incrémenté de 1 automatiquement, en commencant à 1 pour le premier.

Il sera par contre peut-être nécessaire de NE PAS spécifier ta colonne numero lors de l'insertion

INSERT INTO test (titre) VALUES ('titre_à_ajouter');
0