Domanda

Percentage Table

Ho del codice che aggiunge voci da un file .csv al database MySQL. Vorrei sapere quale tipo di dati utilizzare per aggiungere la percentuale dal file .csv alla colonna percentuale nella tabella MySQL. Ho provato con decimale (anche se sapevo che era sbagliato.) E ho ricevuto questo errore.

java.sql.BatchUpdateException: Incorrect decimal value: '8%' for column 'Percentage' at row 1
È stato utile?

Soluzione

Se vuoi riporre come 80% quindi il tipo di dati dovrebbe essere varchar O se vuoi solo mettere 80.11 Quindi il tipo di dati è decimale che stai utilizzando.

Ti suggerirei di conservare il tipo di dati così com'è (decimale) perché dopo aver recuperato dal database se si desidera alcuni calcoli, sarà un onere extra per te. Se sarebbe VarChar, durante il recupero, devi tenere nella stringa in Java, allora devi rimuovere % Quindi convertire in galleggianti e quindi calcoli.

Altri suggerimenti

Decimal funzionerebbe, ma memorizzeresti solo un valore di 8 non "8%" che dovrebbe essere un varchar (stringa).

Se hai l'opzione, ti incoraggio a memorizzarlo come decimale (rimuovere il carattere percentuale) e quindi formattare il numero per mostrarlo con un segno percentuale dopo averlo recuperato dal database. In tal caso, puoi ancora usarlo come tipo di dati decimale, altrimenti dovresti usarne uno basato su stringa, come Varchar.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top