Visualizzazione dei risultati da 1 a 10 su 10

Visualizzazione discussione

  1. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da magobin Visualizza il messaggio
    il problema è nella tipologia di dati della colonna che ospita il dato e cioè BLOB.
    Ahhh dovevi dirlo prima che è un BLOB ! il BLOB contiene un flusso "crudo" di byte. Il DB non "sa" nulla di che cosa rappresenta o contiene quella colonna. Se per te contiene del "testo" allora spetta a TE effettuare le conversioni da String a byte[] e viceversa in maniera fissa, uniforme e coerente.

    Quote Originariamente inviata da magobin Visualizza il messaggio
    codice:
    byte[] domande = res.getString("Domanda").getBytes();
    No! getBytes() di String (quello così, senza argomenti) usa il charset di default della piattaforma su cui sta girando la applicazione Java. Quindi NON va bene.

    Usa sempre UTF-8 per queste conversioni.

    Quote Originariamente inviata da magobin Visualizza il messaggio
    dato che la table ha come encoding UTF8-Default collation
    Non ha nulla che fare con i BLOB. I BLOB non hanno un "encoding" di per sé. Quello che contengono lo devi sapere tu e trattare in modo adeguato, non lo sa il DB.

    Quote Originariamente inviata da magobin Visualizza il messaggio
    Mysql non lo conosco benissimo...comunque ora provo a fare un SELECT sul campo come dici tu
    Non serve più di tanto, ora che sappiamo che è un BLOB. Il problema è sicuramente dovuto a tue conversioni inappropriate.

    P.S.: e tra l'altro, se è un BLOB, allora non dovresti usare setString di PreparedStatement né getString del ResultSet.
    P.S. 2: se è solo testo (potenzialmente molto lungo), perché non un CLOB (Character Large OBject)? Che in MySQL si chiamano tecnicamente TINYTEXT, TEXT, ecc....
    Ultima modifica di andbin; 01-10-2016 a 16:15
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.