|
|
|
Oracle 9 + ADO = ?
|
|||
|---|---|---|---|
|
#18+
Сначала был Oracle 8 и MDAC 2.6. Сайт работал под Win2000 SP3 и WinXP SP1 через провайдера от Мелкософта (MSDAORA) и все было круто. Потом прочитал в мануале про переход LONG -> LOB, конвертнул пару таблиц. Т.к. MS'ный OLEDB провайдер такие колонки не поддерживает, переключился на родного OraOLEDB.Oracle provider. Стали вылетать процессы DLLHOST с жуткими сообщениями в EventLog что все хреново и пошел бы я... Поставил клиента от Oracle 9 (у нас админы и так грозятся что скоро серваки переставят на девятку). Стало еще хуже. Провайдер от мелкософта не коннектится вообще и регуется что он не смог от Оракла даже описание ошибки получить. Провайдер от оракла коннектится и прилично даже работает, если бы не одно НО: он плохо понимает конструкции типа: select 'a' || (case when '1'='1' then 'b' else 'c' end) as X from dual вываливается ошибка ORA-00907: missing right parenthesis Если посмотреть на передаваемые по сетке пакеты, то там видится такой запрос: select 'a'||(casewhen'1'='1'then'b'else'c'end) as X from dual т.е. кто-то с большого перепоя замочил пробелы. С учетом того что SQLPlus и PL/SQl работают на ура подозреваю, что крыша съехала у MDAC/ADO. Проверялось на Вин2000 SP3 и MDAC2.6 и под WinXP SP1 MDAC 2.7, результат один и тот же. Можно конечно убрать уже существующие скобки, тогда становится легче и указанный запрос выполняется в виде: select 'a'||case when'1'='1' then'b' else'c' end as X from dual но это не выход потому что кто-то пробелы все-же откусывает, причем непредсказуемо. Приведенный SQL лишь демонстрирует ошибку, в реальности запросы намного сложнее, и оптимизировать их таким раком или переводит под VIEW ну ОЧЕНЬ неохота. Пока я жду MDAC 2.8 который вместе с Win2003, но может у кого есть какие идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.04.2003, 21:12 |
|
||
|
Oracle 9 + ADO = ?
|
|||
|---|---|---|---|
|
#18+
A perevesti stmt v callable? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2003, 09:37 |
|
||
|
Oracle 9 + ADO = ?
|
|||
|---|---|---|---|
|
#18+
Da, a Regional Setting na comp s ADO in English or Russia? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2003, 09:39 |
|
||
|
Oracle 9 + ADO = ?
|
|||
|---|---|---|---|
|
#18+
Regional Settings were Russian, changed to English on WinXp - no differences, the same error. I don't think that spaces are "optimized" because reg.set. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2003, 11:20 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32151482&tid=1990755]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
157ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 282ms |
| total: | 507ms |

| 0 / 0 |
