Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Inserimento di più righe in Mysql
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • D
      danny1975 User Attivo • ultima modifica di

      [...]

      Va bene, grazie, mo vedo come posso aggiornarlo, spero che l'amico che ha postato il primo tread non abbia lo stesso problema
      Ciao

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • B
        bazarop User Attivo • ultima modifica di

        Io ho testato il codice su MySql e non ha dato errore. Vedremo domani 🙂

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • P
          pettedemon User Attivo • ultima modifica di

          Ecco cosa ho inserito io
          [php]DELIMITER //
          CREATE function multiple (num INT)
          RETURNS int
          BEGIN DECLARE stop INT default 1;
          ciclo: WHILE stop<=num DO
          INSERT INTO t1(id) VALUES('0');
          set stop=stop+1;
          END WHILE ciclo;
          return 1;
          END;

          select multiple(50);[/php]e il messaggio di errore quando richiamo la funzione
          [php]Error : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';
          DELIMITER;

          select multiple(50)' at line 9[/php]

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • C
            cyrus User • ultima modifica di

            Ciao, forse non hai inserito il nome giusto della tabella e dell'attributo.

            @Bazarop said:

            PS: ovviamente tabella e attributi possono essere scelti in modo arbitrario. Al posto di "t1(id)", inserire "table_web(dir)".

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • P
              pettedemon User Attivo • ultima modifica di

              Funziona tutto!
              Perfetto!!!
              La funzione si è memorizzata all'interno del database e adesso basta solo richiamarla!
              Grazieeeeeeeee

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • B
                bazarop User Attivo • ultima modifica di

                Ciao Pettedemon, figurati 🙂

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • P
                  pettedemon User Attivo • ultima modifica di

                  Domanda:
                  se io devo inserire altre variabili che si inseriscano nel mio ciclo, come funziona la procedura per inizializzarle ?
                  Grazie!

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • B
                    bazarop User Attivo • ultima modifica di

                    DECLARE var INT default 1;

                    Declare var int -> dichiara la variabile "var" e il tipo;
                    Default 1 -> indica il valore iniziale uguale ad uno.

                    L'equivalente in php di :
                    var $pippo;
                    $pippo=1;

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • P
                      pettedemon User Attivo • ultima modifica di

                      Questa è la mia funzione
                      [PHP]DELIMITER //
                      CREATE function inserimento_f_4 (num INT, numero INT, dal_data DATE)
                      RETURNS int
                      BEGIN
                      DECLARE stop INT default 1;
                      DECLARE numero INT;
                      DECLARE dal_data DATE;
                      ciclo: WHILE stop<=num DO
                      INSERT INTO dati_web(posizione,n,dal) VALUES(stop,numero,dal_data);
                      set stop=stop+1;
                      END WHILE ciclo;
                      return 1;
                      END; [/PHP]

                      Devo inserire un numero progressivo e mi va bene la varabile del ciclo e funziona, poi devo inserire in ogni riga, un numero uguale per tutti e una data....
                      [PHP]select inserimento_f_4 (15, 945, '2011-10-05')[/PHP]

                      ho provato così ma non funziona...
                      Cosa sbaglio ?
                      Grazie

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • P
                        pettedemon User Attivo • ultima modifica di

                        Mi rispondo da solo perchè ho risolto.
                        Non serve inizializzare la variabile numero da inserire e data, basta inserirle come parametri della funzione e funziona tutto
                        [PHP]DELIMITER //
                        CREATE function inserimento_f_10 (num INT, numero INT, data_dal DATE)
                        RETURNS int
                        BEGIN
                        DECLARE stop INT default 1;
                        ciclo: WHILE stop<=num DO
                        INSERT INTO tab_web(posizione,n,dal) VALUES(stop,numero,data_dal);
                        set stop=stop+1;
                        END WHILE ciclo;
                        return 1;
                        END; [/PHP]

                        e poi alla funzione gli passa i valori che mi servono
                        [PHP]select inserimento_f_10 (15, 945, '2011-05-02')[/PHP]

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • B
                          bazarop User Attivo • ultima modifica di

                          Esattamente, se la variabile è un INPUT della FUNZIONE, non serve il declare.
                          Tu parlavi di inizializzare variabile da inserire nel ciclo e avevo frainteso.

                          Ciao
                          Andrea

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          Caricamento altri post
                          Rispondi
                          • Topic risposta
                          Effettua l'accesso per rispondere
                          • Da Vecchi a Nuovi
                          • Da Nuovi a Vecchi
                          • Più Voti