[PHP] boucle pour maj données postgres

lamia2 Messages postés 8 Statut Membre -  
Xil Messages postés 351 Statut Membre -
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...

4 réponses

  1. lamia2 Messages postés 8 Statut Membre
     
    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
  2. ceddec Messages postés 149 Statut Membre 82
     
    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
  3. yokithis
     
    svp j chercher code source ou document en php qui permit la connection avec base oracle 10j...
    Merci
    0
  4. Xil Messages postés 351 Statut Membre 257
     
    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