Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Здравствуйте всем! Обстановка: Win Server 2008 R2 x64, DB2 WSE 9.7.6. Ваяю тут командный файл по экспорту записей из таблицы. Командный файл запрашивает несколько параметров, которые потом подставляются в запрос. Файл exp_src.cmd выглядит так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. и вызывыается из другого bat-файла как Код: plsql 1. 2. Проблема в том, что синтаксис exp_src.cmd неправильный. А именно - строка с командой export, потому что одна команда разбита в несколько строк. Если вписать все в одну строку, то команда выполнится. Но в одной строке слишком длинно и некрасиво. Хотелось бы sql перенести по строка для наглядности. Посоветуйте, пожалуйста, что можно сделать? С уважением, Семен Попов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 10:01 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
поместите сам sql в переменную, а уже ее подставьте в команду экспорта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 10:51 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Semen Popov, Добрый день. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 11:12 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein, спасибо. На меленьком sql у меня еще получилось. Затем попытался по этому правилу впихнуть громадный sql (в нем много полей, join, скалярных функций, склеивания строк и т.д.) и честно говоря замучался и запутался. Так и не получилось запустить. То есть этот вариант вроде бы подходит, но при больших скриптах будет довольно трудно приводить синтаксис к рабочему варианту. Ggg_old, спасибо. Не подскажете, как в cmd поместить многострочный скрипт (с переводом каретки и возвратом строки) в одну переменную? Ведь через set sqlString= мы наткнемся на те же проблемы. Сейчас самы простой вариант у меня был - скрипт экспорта обернуть в отдельный файл exp.sql, а в exp_src.cmd будет вызов на исполнение этого файла db2 -l%log% -td@ -f "exp.sql" . Но в этом варианте я не могу передать в скрипт параметры. Может тогда сначала генерить этот exp.sql через команду echo "бла-бла-бла" > exp.sql . Но пока не знаю, как одной командой echo скинуть многострочный sql в файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:47 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Semen Popov, Зачем одной командой? Код: powershell 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 16:11 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Евгений Хабаров, у меня скрипт из более, чем 30 строк. Снова вставлять множество echo и отслеживать синтаксис. Либо скрипт придется максимально ужать, пренебречь наглядностью ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 17:02 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Semen Popov, Ну при желании можно хранить шаблон с начальными значениями вида {VarXX}, а при генерации конечного скрипта подменять начальные значения на нужные. В windows для таких экспериментов я использую Unix-утилиты (gnuwin32), например sed. Ну и в echo тоже нет ничего зазорного, оно работает, хотя наглядность действительно несколько страдает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 17:10 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Semen Popov, Почитайте про Как использовать переменные в файлах SQL скриптов ? Либо про Command line processor plus (CLPPlus) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 17:13 |
|
||
|
bat, cmd и красивый sql
|
|||
|---|---|---|---|
|
#18+
Всем спасибо. Натолкнули на решение. Вот что получилось (см. вложение). Принцип такой: Есть файл шаблона sql, где ввел условные переменные автозамены. Файл шаблона копируется в новый, затем в нем делается автозамена. Готовый файл подается на выполнение DB2. Для автозамены использую известную утилиту UVFilesCorrector. Задача решена. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 19:26 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=38900301&tid=1600867]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 160ms |

| 0 / 0 |
