|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
Добрый день. Есть несколько серверов Oracle 9i, 10g, 11g (x64) под Win. Рядом крутится ПО, использующее в качестве СУБД MSSQL 2000. Со стороны Oracle настроены линки (9i - HS, 10 & 11 - TG), идет забор данных. Одно из полей в таблице MSSQL имело тип datetime. После обновления версии ПО и сервера (до MSSQL 2014) тип поля изменился на datetime2. Древние системы 9 и 10 видят это поле как varchar2(27) и продолжают работать как раньше, данные идут. А вот 11 версия видит его как date и попытки запроса заканчиваются каждый раз по-разному: от возврата пустого набора, до обрыва сессии. У кого есть опыт работы с этим типом данных, посоветуйте что делать. ЗЫ Пока настроил забор данных в 11 через view на 10-ке. Временно. На стороне MSSQL изменить ничего не могу. Все "работающие" версии 9 и 10 - 32-битные, 11 - 64 бита. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 15:04 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
luigi, не расчитывать на неявное преобразование даты, а перестроить view с явным преобразованием типа. Чуток подумать и написать скрипт, который пробежится по словарям и выполнит автоматическое преобразование всех объектов содержащих timestamp2 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 15:22 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
Vadim Lejnin, luigiЗЫ Пока настроил забор данных в 11 через view на 10-ке . Временно. На стороне MSSQL изменить ничего не могу. Вадим, разверни мысль - о каком view идет речь? Может дело в разрядности TG, если такие древние версии как 9i работают.... Под 11g есть TG 32-битный? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 16:54 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
На SQL Server: Код: plsql 1. 2.
Oracle: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 17:42 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
Упс, прочитал по-диагонали: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Тоже самое и в 12.2.0.1.0. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 17:46 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
SY, ОС на Oraclе'ах 10 и 12 какая? Линки через что настроены? У меня же и на 9.2.0.8 (х86) такая же картина. А вот на 11.2.0.4 (х64) - нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 17:53 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
У меня 11G видит datetime2 как NVARCHAR2(27): Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 18:03 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
luigi, Вместо того, чтобы оращатся напрямую с testtable@link создаете view типа Код: plsql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 18:06 |
|
Oracle 9, 10, 11 и datetime2 в MSSQL 2014
|
|||
---|---|---|---|
#18+
luigi, ну или Код: plsql 1. 2. 3.
Точную форматную маску можно посмотреть сделав select на старых версиях, чтобы не переделывать существующие приложения под новые условия ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2019, 18:15 |
|
|
start [/forum/topic.php?fid=52&fpage=87&tid=1882923]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 316ms |
total: | 437ms |
0 / 0 |