[PHP] boucle pour maj données postgres

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. 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...
    1. 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)
      1. svp j chercher code source ou document en php qui permit la connection avec base oracle 10j...
        Merci
        1. 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');