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

    [mysql] come mai tutti i record partono da id = 1 ???

    solitamente quando vai a creare un record e id l'hai messo come AUTO_INCREMENT non dovrebbe partire da 0 ?

    guardando sul mio mysql di aruba ho notato che incominciano da 1...

    devo inpostare qualcosa io?

  2. #2
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    e perchè dovrebbero partire da 0?

    Non è un array
    deleted_id_48586
    Sgurbat
    y.redaelli@gmail.com

  3. #3
    forse ricordo male io ma un tempo non partivano da zero? *_*

  4. #4
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    No.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    241
    ah davvero? io credevo che gli indici autoincrement partissero da 0 come standard, e da 1 se si impostava UNSIGNED

  6. #6
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    con UNSIGNED obblighi il campo ad avere solo numeri positivi, cosa peraltro impossibile con un campo auto-incrementale.
    deleted_id_48586
    Sgurbat
    y.redaelli@gmail.com

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    241
    Originariamente inviato da Sgurbat
    con UNSIGNED obblighi il campo ad avere solo numeri positivi,
    appunto, a maggior ragione dovrebbe partire da uno se senza mi parte da zero

    cosa peraltro impossibile con un campo auto-incrementale.
    perchè? accetta i numeri negativi il campo auto-incrementale?

    con questo non voglio dire che ho ragione e tu hai torto, visto che io sono cosciente di non sapere come funziona il discorso e tu hai invece risposto in maniera decisa (è evidente che ne sai più di me), ma solo per chiederti di spiegarmi meglio.

    P.S.: beh se qualcun altro che sa mi sa rispondere ugualmente ben venga :P

  8. #8
    Un paio di ragioni ....

    Lo zero significa anche FALSE

    L'indice dell'auto_increment segna sempre il "prossimo" valore che verra' assegnato. Quindi se sei a zero il prossimo e' 1. E siccome non puoi andare piu' indietro dell'ultimo valore (teoricamente) presente, cioe' lo zero... l'auto_increment iniziera' sempre da 1.

    Volendo puoi con un UPDATE assegnare lo zero. Un numero negativo, sempre che non ne esista gia' un altro identico, invece lo si puo' assegnare sia esplicitamente nell'INSERT oppure con un UPDATE.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.