Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Incrementare un campo di 10 in 10

    Ciao a tutti, avrete presente la funzione AUTO_INCREMENT che incrementa un campo numerito ogni volta che si aggiunta una riga?
    Ecco, dovrei fare in modo che quel campo incrementi l'id di 10 in 10... è possibile? grazie!

  2. #2
    Non credo sia possibile, comunque per tanto così non è meglio, nel sistema che utilizza il db, moltiplicare il campo auto_increment da utilizzare semplicemente per 10?

  3. #3

    Re: Incrementare un campo di 10 in 10

    Originariamente inviato da ratlook
    Ciao a tutti, avrete presente la funzione AUTO_INCREMENT che incrementa un campo numerito ogni volta che si aggiunta una riga?
    Ecco, dovrei fare in modo che quel campo incrementi l'id di 10 in 10... è possibile? grazie!
    Non credo e spero vivamente di no, sarebbe una cosa assurda. L'unica cosa che puoi fare è ciò che ha detto quit, o al limite fare una chiave primaria non autogenerata, e generare di volta in volta il valore prendendo il valore restituito da MAX(id) e incrementandolo di 10.

    Più che altro, ti consiglierei di rivedere un attimo l'analisi del progetto, perché questo id a scaloni è una cosa abbastanza stramba.

  4. #4
    si si... il progetto forse è un po strambo ma l'avevano già iniziato così e l'unico modo per finirlo in tempi rapidi è questo purtroppo
    altrimenti mi toccherebbe riiniziare tutto da capo e non credo ci voglia poco tempo....

    cmq come potrei fare per trovare l'ultimo id ed incrementarlo di 10?
    grazie in anticipo a chi mi aiuterà!

  5. #5
    Originariamente inviato da ratlook
    si si... il progetto forse è un po strambo ma l'avevano già iniziato così e l'unico modo per finirlo in tempi rapidi è questo purtroppo
    altrimenti mi toccherebbe riiniziare tutto da capo e non credo ci voglia poco tempo....

    cmq come potrei fare per trovare l'ultimo id ed incrementarlo di 10?
    grazie in anticipo a chi mi aiuterà!
    Il più alto lo trovi con una query tipo:
    SELECT MAX(id) FROM table LIMIT 1
    Poi ovviamente fai una insert con il valore trovato incrementato di 10.
    Volendo puoi accorpare le due query in una sola.

  6. #6
    Originariamente inviato da FrancescoCiracì
    Volendo puoi accorpare le due query in una sola.
    sapresti per caso come si fa? grazie!

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    157
    Volendo puoi accorpare le due query in una sola.
    secondo me no in quanto andrebbe a interrogare la solita tabella in cui fa l'insert.
    sono comunque 2 righe di codice

    $r=mysql_fetch_array(mysql_query("select max(id) from tabella",$connessione), MYSQL_ASSOC);
    mysql_query("insert into tabella (id,altrocampo) values (".($r["id"]+10)."),'altro campo' "),$connessione);

    controlla la sintassi.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.