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

    [mysql] campo varchar lungo

    ho un campo TEXT che vorrei convertire in VARCHAR e utilizzare come indice UNIQUE ma ho un problema, molte stringhe contenute in questo campo superano i 256 caratteri consentiti per il tipo VARCHAR, come posso rimediare?

  2. #2
    Utente di HTML.it L'avatar di *pragma
    Registrato dal
    Sep 2001
    Messaggi
    1,087
    mysql si adatta e non le tronca ... perchè non converrebbe in termini di efficienza.
    ciao

  3. #3
    scusami ma io so il contrario, le stringhe vengono troncate in fase di inserimento sempre se superano il limite impostato per il campo varchar? sicuro?

  4. #4

    Re: [mysql] campo varchar lungo

    Originariamente inviato da powerflash2
    ho un campo TEXT che vorrei convertire in VARCHAR e utilizzare come indice UNIQUE ma ho un problema, molte stringhe contenute in questo campo superano i 256 caratteri consentiti per il tipo VARCHAR, come posso rimediare?
    con mysql fino alla versione < 5.0.3 il campo varchar poteva solo arrivare a 255 caratteri. Dalla versione 5.0.3 e successive puo' arrivare alla stessa dimensione di un campo text cioe' 65535.

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

  5. #5
    veramente un campo varchar può contenere 65536 caratteri quindi non capisco dove sta il problema...
    « Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]

  6. #6
    ops... effettivamente avete ragione, il problema è che ero rimasto ancora alla versione 4 .. nel modus operandi.

    Grazie

  7. #7
    ho passato i campi iun formato VARCHAR(500) ma creando la chiave UNIQUE mi viene restituito un errore: #1071 - Specified key was too long; max key length is 1000 bytes

    credo proprio che non si possa fare quindi

  8. #8
    Originariamente inviato da powerflash2
    ops... effettivamente avete ragione, il problema è che ero rimasto ancora alla versione 4 .. nel modus operandi.

    Grazie
    si ma.... ti conviene fare un indice UNIQUE su un campo varchar(65535) ???


    @edit ... tanto per...

    la lunghezza massima per un indice UNIQUE e' 1000 bytes. Da calcolare pure il charset usato...


    te ne sei accorto da solo.....

    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.