DateTime в oracle => Xml => DateTime в Sql Server
От: Kaifa Россия  
Дата: 07.12.10 12:00
Оценка:
Есть поле типа datetime (или как он там в оракле называется). Есть запрос из Oracle, типа

select xmlelement("item", xmlattributes(to_char(dv_ob, 'DD.MM.RRRR HH24:MI:SS') as dv_ob))).getclobval() from tttt



потом в SqlServer данный xml загрузить в таблицу через insert .. select..
Вопрос, что нужно писать в to_char(...), чтобы преобразовать в нормальный xml формат даты или это вообще по другому в oracle принято делать?
Re: DateTime в oracle => Xml => DateTime в Sql Server
От: wildwind Россия  
Дата: 07.12.10 14:31
Оценка:
Здравствуйте, Kaifa, Вы писали:

K>Вопрос, что нужно писать в to_char(...), чтобы преобразовать в нормальный xml формат даты или это вообще по другому в oracle принято делать?


Без to_char должен выйти стандартный формат.
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14259/xdb13gen.htm#sthref1506
Re[2]: DateTime в oracle => Xml => DateTime в Sql Server
От: Kaifa Россия  
Дата: 08.12.10 04:10
Оценка:
W>Без to_char должен выйти стандартный формат.
W>http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14259/xdb13gen.htm#sthref1506

В том-то и дело что выходит только дата. Мне нужно со временем и чтобы было стандартно, чтобы съел SQL Server.
Re[3]: DateTime в oracle => Xml => DateTime в Sql Server
От: _d_m_  
Дата: 08.12.10 05:33
Оценка:
Здравствуйте, Kaifa, Вы писали:

W>>Без to_char должен выйти стандартный формат.

W>>http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14259/xdb13gen.htm#sthref1506

K>В том-то и дело что выходит только дата. Мне нужно со временем и чтобы было стандартно, чтобы съел SQL Server.


SQL Server съест текст при любой региональной настройке и при даже установленной опции set dateformat, если строка будет вида:
'YYYYMMDD HH:MM:ss' или 'YYYYMMDD HH:MM:ss.mmm'
Re[4]: DateTime в oracle => Xml => DateTime в Sql Server
От: Kaifa Россия  
Дата: 08.12.10 05:43
Оценка:
___>SQL Server съест текст при любой региональной настройке и при даже установленной опции set dateformat, если строка будет вида:
___>'YYYYMMDD HH:MM:ss' или 'YYYYMMDD HH:MM:ss.mmm'

Оно понятно, что я могу написать любой удобный формат и потом использовать на sql server convert.
Но у меня там временная таблица с кучей полей, перечислять их все в запросе не хочется — страшно выглядит. В общем вышел из положения через 'YYYY-MM-DD"T"HH24:MM:SS'. Это съел. Хоть и миллисекунды с временной зоной жалко
Re[5]: DateTime в oracle => Xml => DateTime в Sql Server
От: ZAMUNDA Земля для жалоб и предложений
Дата: 08.12.10 11:47
Оценка:
Здравствуйте, Kaifa, Вы писали:

K>В общем вышел из положения через 'YYYY-MM-DD"T"HH24:MM:SS'. Это съел. Хоть и миллисекунды с временной зоной жалко :-(

Формат даты в XML ISO8601 и он примерно такой "YYYY-MM-DDThh:mm:ss.sss+hh:mm", и MSSQL его понимает (и если мне не изменяет память, понимал приспокойненько).
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
Re[6]: DateTime в oracle => Xml => DateTime в Sql Server
От: Kaifa Россия  
Дата: 09.12.10 07:43
Оценка:
Здравствуйте, ZAMUNDA, Вы писали:

ZAM>Здравствуйте, Kaifa, Вы писали:


K>>В общем вышел из положения через 'YYYY-MM-DD"T"HH24:MM:SS'. Это съел. Хоть и миллисекунды с временной зоной жалко

ZAM>Формат даты в XML ISO8601 и он примерно такой "YYYY-MM-DDThh:mm:ss.sss+hh:mm", и MSSQL его понимает (и если мне не изменяет память, понимал приспокойненько).

После плюса должна идти зона, насколько я знаю..
Re[5]: DateTime в oracle => Xml => DateTime в Sql Server
От: Denis Popov Россия http://picasaweb.google.com/denislpopov
Дата: 09.12.10 08:37
Оценка: 2 (1)
K>Оно понятно, что я могу написать любой удобный формат и потом использовать на sql server convert. Но у меня там временная таблица с кучей полей, перечислять их все в запросе не хочется — страшно выглядит.

установи перед выполнением запроса параметры сессии:

alter session set nls_timestamp_format = 'yyyy-mm-dd"T"hh24:mi:ss';
alter session set nls_timestamp_tz_format = 'yyyy-mm-dd"T"hh24:mi:ssxfftzr';


тогда to_char() по умолчанию будет использовать его.

K>В общем вышел из положения через 'YYYY-MM-DD"T"HH24:MM:SS'. Это съел. Хоть и миллисекунды с временной зоной жалко


Какой именно тип у поля tttt.dv_ob? Если DATE, то он с точностью до секунд, если какой-то из TIMESTAMP, то милисекунды есть.
Re[3]: DateTime в oracle => Xml => DateTime в Sql Server
От: wildwind Россия  
Дата: 09.12.10 20:52
Оценка:
Здравствуйте, Kaifa, Вы писали:

W>>Без to_char должен выйти стандартный формат.

W>>http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14259/xdb13gen.htm#sthref1506

K>В том-то и дело что выходит только дата.


Версия?
Re[4]: DateTime в oracle => Xml => DateTime в Sql Server
От: Kaifa Россия  
Дата: 10.12.10 06:05
Оценка:
W>Версия?

oracle — 10
sql server — 2005
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.