Re: db-lib: support for new MS SQL 2008 data types - part 3

LacaK <[email protected]>
Newsgroups gmane.comp.db.tds.freetds
Message-ID <[email protected]>
LacaK  wrote / napísal(a):
>
> May be that it is not related, but I noticed that FreeTDS converts 
> "datetimeoffset" to "datetime2" bit different than does SQL Server.
> For example we have any table "t" with "datetimeoffset" column named 
> "dto", with value : '2014-05-19 12:50:00 +01:00'
>
> When I do in SQL Server:
>   select dto, cast(dto as datetime2) as dt2 from t;
>
> I receive:
>   dto                                            dt2
>   ------------------------------------------------------
>   2014-05-19 12:50:00 +01:00   2014-05-19 12:50:00
>
> Which corresponds to: 
> http://msdn.microsoft.com/en-us/library/bb630289.aspx
> Where is stated: "The date and time are copied to the datetime2 value, 
> and the time zone is truncated."
>
> But when I am trying use dbconvert() which calls tds_convert() for 
> srctype=SYBMSDATETIMEOFFSET to desttype=SYBMSDATETIME2 then I receive 
> UTC datetime (shifted by time zone offset)
>
> So converting (casting) in SQL Server is different from that used in 
> FreeTDS ... is it as expected ?
It is okay, as far as there is "offset" field in TDS_DATETIMEALL which 
holds time zone offset in minutes.
I have expected, that when I am converting to SYBMSDATETIME2 then I must 
evaluate only "date" and "time" fields (because datetime2 data type does 
not hold time zone information) ... so I overlooked "offset" field, 
because I have "wrongly" expected, that it will be zero for SYBMSDATETIME2.
So it is okay for me.
Thanks
-Laco.

_______________________________________________
FreeTDS mailing list
[email protected]
http://lists.ibiblio.org/mailman/listinfo/freetds
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.