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

    Il punto decimale in un campo SQL

    Ho un problema nell'aggiornamento di un record di un DB SQL, da una pagina ASP.NET, con codice behind C#.

    Si tratta di un campo formattato nel DB come "real", che leggo in una variabile "float", e che modifico a programma.
    Il problema è che nella costruzione nella stringa per il comando T-SQL UPDATE, il valore da aggiornare nel DB è scritto con la virgola decimale: al momento della esecuzione della ExecuteNonQuery, ho una Sql.exception, perchè il server si aspetta il punto decimale.
    Da notare che nella visualizzazione della tabella del DB con Visual Web Developer il campo incriminato viene presentato con la virgola decimale.
    La stessa cosa succede leggendo i dati con un dataGrid: nella presentazione dei dati c'è la virgola, ma aggiornando i dati, se non si sostituiscono le virgole decimali con il punto decimale, si genera lo stesso errore.

    Il messaggio di errore è:
    Errore durante la conversione del tipo di dati da varchar a real.

    La soluzione dovrebbe essere la formattazione del valore del campo (nella stringa per il comando UPDATE) usando il punto decimale, tramite i metodi ToString o Format, ma non ho trovato come mettere il punto decimale invece che la virgola decimale.

    un grazie a chi mi potrà aiutare.

  2. #2
    una semplice replace ti sarà vieppiù d'aiuto

  3. #3
    ok, grazie mille!

  4. #4
    Riapro questo thread per porre una semplice questione.

    Non c'è un modo per dire a .NET di interpretare i campi provenienti da sql server o da chi per lui senza convertirli nel formato "latino"?

    A mio modesto parere, è proprio una stupidata che ciò avvenga.

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.