|
|
|
ORA-00911: неверный символ
|
|||
|---|---|---|---|
|
#18+
Играющий с плюшевым осликом, Deady > Запомните этот: > String sql ="begin\n" +"exec ... " +"exec ... " + ... > Тема==Ответить String sql = new StringBuffer("begin").append("exec...").append("exec...").append("end").toString(); тогда уж так Данное преобразование проделает комилятор. Причём в версии 1.5 он будет использовать более быстрый класс StringBuilder, вместо стрингбуфера. Константы всегда вычисляются на этапе компиляции. "x"+"y" заменяется компилятором на "xy". Оба не правы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 11:40 |
|
||
|
ORA-00911: неверный символ
|
|||
|---|---|---|---|
|
#18+
Denis PopovИМХО проблема не в том, чтобы вообще как-нибудь выполнить SQL-команды через JDBC, а в том, чтобы выполнить уже готовый сторонний скрипт, который является допустимым для того же SQL*Plus'а. ИМХО тогда, наверно, стоит воспользоваться напрямую sql*plus'ом ? класс Runtime поможет ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 13:39 |
|
||
|
ORA-00911: неверный символ
|
|||
|---|---|---|---|
|
#18+
LinerА откуда вы знаете что SQL*Plus не разбирает команды? Он-то как раз самостоятельно и разбирает, а не сервер. Denis PopovИМХО Если их разобрать и засунуть в батч они уйдут на сервер и выполнятся одним пакетом что будет быстро, а в скрипте строки для выполнения символами перевода строки не заканчиваются? Символ перевода строки необязательно означает конец команды. Linerи такое не только в jdbc, я например в TOAD не могу выполнить несколько команд разделенных ; - то же самое пишет Меню SQL Editor->Execute as Script (F5). Еще кнопка такая же есть. Igor-65ИМХО тогда, наверно, стоит воспользоваться напрямую sql*plus'ом ? класс Runtime поможет ? Если SQL*Plus есть. JBDC Thin-слиент не требует предустановленного ораклового клиента. А вообще ИМХО можно поискать реализации разбора. К примеру, в компонентах ODAC от CoreLabs есть подобный парсер, может что-то и можно найти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2005, 14:10 |
|
||
|
ORA-00911: неверный символ
|
|||
|---|---|---|---|
|
#18+
Denis PopovМеню SQL Editor->Execute as Script (F5). Еще кнопка такая же есть. ну все правильно, TOAD в этом случае походу так же как и SQL*Plus парсит скрипт Denis PopovА вообще ИМХО можно поискать реализации разбора. К примеру, в компонентах ODAC от CoreLabs есть подобный парсер, может что-то и можно найти Поддерживаю! найти (или написать) парсер для скрипта. Потом ИМХО засунуть в батч все полученные команды и отправить их скопом на сервак, останется возможность получить код возврата о выполнении каждой команды, что будет быстрее чем в случае "exec ... " +"exec ..., и не нужен будет SQL*Plus. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2005, 07:17 |
|
||
|
ORA-00911: неверный символ
|
|||
|---|---|---|---|
|
#18+
Liner Поддерживаю! найти (или написать) парсер для скрипта. Потом ИМХО засунуть в батч все полученные команды и отправить их скопом на сервак, останется возможность получить код возврата о выполнении каждой команды, что будет быстрее чем в случае "exec ... " +"exec ..., и не нужен будет SQL*Plus. Вот, к примеру: http://sourceforge.net/projects/sqlt/ Но это, по-моему, C++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2005, 13:10 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=33270214&tid=2151488]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
196ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 194ms |
| total: | 446ms |

| 0 / 0 |
