Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    703

    [vb.net/sql]formato della stringa di input non corretto

    avrei un problema di conversione; mi collego ad un db da visual basic 2008 la tabella ha un campo 'IMPORTO' di tipo decimal;

    parametrizzando la mia query il codice è questo:

    codice:
    'creazione parametro sull'importo
                prm_importo = New SqlParameter()
                prm_importo.ParameterName = "@import"
                prm_importo.Value = Convert.ToDecimal(txtimporto.Text)
                myCmd.Parameters.Add(prm_importo)
    con un try cath mi restituisce: formato della stringa di input non corretto..

    ma dove sbaglio?!? ho provato anche Convert.Toint32, Int32.parse eccecc..
    qualche suggerimento??
    devo passargli un intero decimale nella query non una stringa..

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463
    Originariamente inviato da cleaner
    [...] con un try cath mi restituisce: formato della stringa di input non corretto.. [...]
    Probabilmente, il contenuto della casella di testo non può essere convertito nel tipo Decimal.

    Se ti sembra corretto, forse l'origine dell'errore è da ricercare nel separatore decimale utilizzato.

    Leggi anche la guida MSDN in proposito, che indica come utilizzare diverse "culture" per interpretare correttamente l'informazione.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    703
    mm, ma se esiste la funzione convert.todecimal ..(http://msdn.microsoft.com/en-us/libr...todecimal.aspx)
    forse il decimal di vb.net non corrisponde in qualche modo a quello di sql server ?? :master:

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463
    Originariamente inviato da cleaner
    mm, ma se esiste la funzione convert.todecimal ..(http://msdn.microsoft.com/en-us/libr...todecimal.aspx)
    forse il decimal di vb.net non corrisponde in qualche modo a quello di sql server ?? :master:
    Non c'è attinenza diretta tra le due cose.

    Tu specifichi un parametro da passare a SQL Server, posto che il campo appartenga ad un tipo di dati compatibili, valorizzandolo come Decimal.

    Ciò che fallisce è la conversione del testo contenuto nella casella nel tipo di dato Decimal.

    Questa conversione può fallire perché il contenuto della casella potrebbe non essere interpretato come Decimal.

    Tu hai verificato questa condizione? Hai provato a specificare un intero? Hai provato ad usare un diverso separatore dei decimali (ad esempio, il punto al posto della virgola) nello specificare il valore all'interno della casella di testo?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    703
    ehm..ho capito il perchè ^^ in pratica specificavo i parametri nell'load del form..lasciando la textbox vuota; è bastato metterci un numero base(0.00) e spostare il codice nel button che esegue poi la query di insert e si è messo a posto...GRAssie

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.