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
Conversione data da AS400 a Sql Server
mercoledì 04 febbraio 2009 - 13.51
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
sanzo77
Profilo
| Newbie
45
messaggi | Data Invio:
mer 4 feb 2009 - 13:51
Salve a tutti,
devo eseguire delle query su AS400 usando sql server management studio, ad esempio:
select sum (c.x*d.y)
from a, b, c, d
where a.codact = 'ELI' and
month(a.datexp) = '11' and
year(a.datexp) = '2008'
quando però eseguo ottengo:
Errore di overflow aritmetico durante la conversione di expression nel tipo di dati datetime.
Vado a vedere cosa è contenuto nei dati di as400 e vedo che le date vengono salvate come AAAAMMGG, formato che probabilmente sql server non riconosce... ho provato a dare un occhiata ai codici di conversione utilizzabili tramite la funzione CONVERT, ma non sembra esisterne uno che indichi la data come l'ho citata io.
Sapete aiutarmi?
Grazie :)
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 4 feb 2009 - 14:40
>Salve a tutti,
Ciao!
>devo eseguire delle query su AS400 usando sql server management studio, ad esempio:
su as400? Quindi hai un server linkato?
>Vado a vedere cosa è contenuto nei dati di as400 e vedo che le
>date vengono salvate come AAAAMMGG, formato che probabilmente
>sql server non riconosce... ho provato a dare un occhiata ai
>codici di conversione utilizzabili tramite la funzione CONVERT,
>ma non sembra esisterne uno che indichi la data come l'ho citata
>io.
In realtà su as400 quella data non so se è tipizzata come data. Prova a convertire prima il campo dataexp in stringa, con una CAST, prima di passarla alle funzioni MONTH e YEAR.
>Grazie :)
di nulla!
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
sanzo77
Profilo
| Newbie
45
messaggi | Data Invio:
mer 4 feb 2009 - 14:43
Si, ho un linked server, quindi dici di fare un cast del tipo cast(datexp as varchar) ? e poi come lo passo month?
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 4 feb 2009 - 14:46
>Si, ho un linked server, quindi dici di fare un cast del tipo
>cast(datexp as varchar) ? e poi come lo passo month?
ho paura che tu debba passare a varchar e poi a datetime e solo alla fine usare le funzioni di data
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
sanzo77
Profilo
| Newbie
45
messaggi | Data Invio:
mer 4 feb 2009 - 15:00
Grazie mille, però ti smentisco, è bastato un solo cast a varchar, evidentemente month fa in automatico la conversione :)
Almeno per una query di prova, un pò più semplice di quella che ho scritto in topic, ha funzionato....
Grazie tante ancora, preziosissimo ^^
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 4 feb 2009 - 15:02
>Grazie mille
figurati, se ti ha aiutato, accetta la risposta così chiudiamo il thread.
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
sanzo77
Profilo
| Newbie
45
messaggi | Data Invio:
mer 4 feb 2009 - 15:04
fatto ;)
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 !