Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
SQL Server 2005 Express e decimal
giovedì 03 marzo 2011 - 21.12
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
.NET 3.5
|
Visual Studio 2008
|
SQL Server Express
Andrea9
Profilo
| Newbie
4
messaggi | Data Invio:
gio 3 mar 2011 - 21:12
Ciao a tutti,
oggi ho ricevuto un errore su una applicazione ASP.NET ed ho capito da cosa deriva ma non so come fare.
Nel database ho numerosi campi decimal. Se nelle query di inserimento passo valori con il punto come separatore decimale è tutto ok, se passo invece la virgola ricevo un errore (impossibile la conversione).
Se guardo sulle tabelle inSQL Server i campi decimal però sono mostrati con la virgola.
Di conseguenza quando nell'applicazione riapro i valori salvati in precedenza mi vengono inseriti con la virgola e quindi salvando di nuovo vado in errore (perchè passo la virgola come separatore).
Perchè SQLServer accetta solo il punto e restituisce la virgola come separatore decimale?
grazie a tutti
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 3 mar 2011 - 21:44
>Perchè SQLServer accetta solo il punto e restituisce la virgola
>come separatore decimale?
Perché il punto è l'unico carattere ammesso come separatore decimale, mentre in lettura se non ricordo male ASP.NET legge l'attibuto culture presente nell'elemento globalization nel web.config (ma ti conviene chiedere sulla stanza dedicata) che nel tuo caso sarà probabilmente valorizzato a "it-IT" ed esegue una formattazione del valore:
http://msdn.microsoft.com/en-us/library/hy4kkhe0.aspx
>grazie a tutti
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
ma_di
Profilo
| Junior Member
163
messaggi | Data Invio:
gio 3 mar 2011 - 22:01
Stavo rispondendo ad Andrea ma Lorenzo (che saluto cordialmente) mi ha preceduto.
Pongo un'altra domanda, che forse però necessita di un nuovo thread ( se è così lo riposto).
Come mai se apro una tabella contenente delle date con Management Studio vedo le medesime in formato italiano mentre se scrivo una query agendo su New Query vedo le date in aaaa-mm-gg ?
Grazie a tutti.
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 3 mar 2011 - 22:05
>Stavo rispondendo ad Andrea ma Lorenzo (che saluto cordialmente)
>mi ha preceduto.
>Pongo un'altra domanda, che forse però necessita di un nuovo
>thread ( se è così lo riposto).
>Come mai se apro una tabella contenente delle date con Management
>Studio vedo le medesime in formato italiano mentre se scrivo
>una query agendo su New Query vedo le date in aaaa-mm-gg ?
Ciao,
Le informazioni datetime sono memorizzate in forma numerica, quindi per definizione non hanno formattazione.
Le applicazioni client eseguono dei cast e delle formattazioni per rendere "questi numeri" in un formato umanamente comprensibile.
Se sei interessato all'argomento puoi leggere questo splendido articolo di Tibor:
http://www.karaszi.com/SQLServer/info_datetime.asp
>Grazie a tutti.
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
Andrea9
Profilo
| Newbie
4
messaggi | Data Invio:
ven 4 mar 2011 - 00:07
Grazie, dipende effettivamente da "globalization".
grazie ancora,
Andrea
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !