|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Привет, друзья! Проблема в том, что при создании зарпоса к DB2 некорректно обрабатываются :. Понимаю, что конечно же дело в том, что таким образом в запрос засовываются разные параметры и прочие штуки. Вопрос: как сделать, чтобы : отрабатывался как символ 58, а не как служебный символ. Вариант ||CHR(58)|| не проходит. ||X58|| тоже. cast (... as varchar(100)) тоже. Prepare не пробовал, но мне нужно без prepare просто запросом. Всё уже перепробовал. А запрос вот такой: insert into T1 (str1) values ('abc: def f _A') ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 10:37 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
HTML пробелы съел. Реально между f и _A много пробелов (штук 15) insert into T1 (str1) values ('abc: def f _A') ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 10:40 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
не пойму в чем собственно проблема? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 10:48 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Я сам не понимаю. Вот что я пробую и не получается insert into T1 (A) values ('NEWGATE: TEST ACCOUNT3 _A'). А потом пытаюсь вынуть назад. Вот что вываливается при попытке сдалать из вынутого XML: java.lang.RuntimeException: NEWGATE: TEST ACCOUNT3 has illegal symbol with code 26 Во всех клиентах (Embarcadero, Quest Central for DB2) тоже _A кусок не виден. DB2 8 под Винды. Вроде как не патченная. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 11:05 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Гы, а на солярке DB2 8 всё работает нормально... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 11:07 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Ситуация становится всё более запутанной. Вставляется видимо нормально всё , а вот вынуть не получается в случае использования драйвера DB2 напрямую. Embarcadero через ODBC вытаскивает строку нормально. Quest Central и Java JDBC Driver ver2 выдают без окончания и с этим дурацким символом 26. Так что что-то в выдаче данных через Native драйвер, блин... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 11:19 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Что, даже из CLP не получается?... что-то не верится... У меня ни разу нигде такогоне наблюдалось. Похоже что ошибка где-то в другом месте. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 11:22 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Как забавно. Вот что выдаёт процессор командной строки DB2 ver 8.1.0 Две таблицы T1 & T2. В первой много записей, во второй- одна. Обратите внимание что выдаётся там где одна, т.е. для таблицы T2. Видно, что DB2 кривеет уже на физической структуре таблицы. ТАк что я думаю что проблемы с DB2 под винды. Или надо 8.2.0 поставить. Интерсно , что я такого сделал чтобы DB2 окривела?! )))))))))))))))))))))))))))))))))))))))))))) db2 => select * from T1 A ---------------------------------------------------------------------------------------------------- NEWGATE: TEST ACCOUNT3 _A NEWGATE: TEST ACCOUNT3 _A NEWGATE: TEST ACCOUNT3 _A NEWGATE:: TEST ACCOUNT3 _A NEWGATE::TEST ACCOUNT3 _A NEWGATE: TEST ACCOUNT3 _A NEWGATE: TEST ACCOUNT767 _A 7 записей выбрано. db2 => select * from T2 A ------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------ ---------------------------------------- NEWGATE: TEST ACCOUNT3 _A 1 записей выбрано. db2 => ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 11:57 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
А что выдаст: Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 12:21 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
gardenmanА что выдаст: Код: plaintext 1. 2.
Да я просёк - он падит до 1000 символов. В общем комманд дул работает нормально. Проблема в явовском драйвере. Почему-то внутри этого abc: qwqw re _A он видит какой -то управляющий символ или что-то подобно. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 12:30 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
как вариант, может что-нить с перекодировкой связано? к сожалению я в яве - пас! :( ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 12:32 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Если бы перекодировка, тогда бы всё слово было бы кривое. А так только конец рубится. Плюс кириллицы вообще нет, так что тут скорее всего чисто. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 12:38 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
На явовский драйвер тоже грешить не стоит. Command Center тоже на яве сделан. Из него ведь все нормально вставляется. Очевидно ошибка настолько дубовая и абсурдная что с первого взгляда даж и не видать. Свежий взгляд нужен. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 12:42 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
gardenmanНа явовский драйвер тоже грешить не стоит. Command Center тоже на яве сделан. Из него ведь все нормально вставляется. Очевидно ошибка настолько дубовая и абсурдная что с первого взгляда даж и не видать. Свежий взгляд нужен. Кажись нащупал. С оракла приходят данные. В них символ _ имеет код 142 , а не 95. В итоге проблемы. Попытаюсь понять, то ли в базе уже 26 из 142 сделано. Либо DB2 реально возвращает 142, а уже Java драйвер делает из 142 -> 26. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 13:06 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Короче 142-й символ ложится в базу в неизветном виде. При селекте DB2 jdbc драйвером он уже 26-й, причём спереди и сзади символы в порядке , т.е. вместо [_] -> [chr(26)]. Грусто. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 14:18 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
А данные Orcle->DB2 чем перегоняются? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 14:22 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
А кодировки в Оракле и ДБ2 совпадают? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 14:23 |
|
Db2 запрос с ":" - как сделать чтоб работало?!
|
|||
---|---|---|---|
#18+
Честно говоря не знаю. Прилетают только дампы таблиц. А чёрт его знает, может из ворда cut&paste , вот и появляются такие вот штук. Английская контора, так что для них проблемы кодировки не существует, только Юникод-не юникод. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2005, 14:48 |
|
|
start [/forum/topic.php?fid=43&msg=32891765&tid=1606018]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 291ms |
total: | 429ms |
0 / 0 |