Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Работа с SYBASE / 10 сообщений из 10, страница 1 из 1
10.12.2007, 12:03:03
    #34997691
genius3d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
Первый раз лезу через шелл в SYBASE, хочу банально посчитать, сколько у меня ошибок в базе есть и вывести на экран.
Но постоянно выводит 0. Порылся по форуму нашел вот этот топик
http://]http://www.sql.ru/forum/actualthread.aspx?tid=498409&hl=var


, сделал прям один в один как там советуют

err=`{
$SYBASE/bin/isql -U$DBA -P$PWD -b -s"" -w100 <<-ISQL_END1
set nocount on
use $maybase
go
select count(*) from error where status in (0,1,2,3)
go
ISQL_END1
} | sed -e "s/^ *//"`

if ["$err" -eq ""]; then
err=0;
echo $err



но все равно выводит нуль. В чем проблема кто знает?


Главное перспектива!+)
...
Рейтинг: 0 / 0
10.12.2007, 12:23:11
    #34997776
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
это я советовал. И всё должно работать.
Только у Вас ошибки синтаксические в конце.

автор
if ["$err" -eq ""]; then
err=0;


-нету fi в конце
-со строкой надо сравнивать не -eq, а знаком ==
-между аргументами и квадратными скобочками в команде test надо ставить пробелы

хотя вообще не очень понятно, зачем последняя проверка и замена - count всегда что-нибудь вернёт, хотя бы 0.
Тут надо скорее анализировать ошибку, почему не вернуло (не смогло достучаться до сервера, ошибка в запросе и т.п.)

Вот сейчас у себя выполнил, только на master-е - всё гуд
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
err=`{
$SYBASE/OCS-12_5/bin/isql -U$DBA -P$PWD -S$SERVER -b -s"" -w100 <<-ISQL_END1
set nocount on
use $maybase
go
select count(*) from syslogins
go
ISQL_END1
} | sed -e "s/^ *//"`

if [ "$err" == "" ]; then
err= 0 ;
fi
echo $err
...
Рейтинг: 0 / 0
10.12.2007, 13:00:51
    #34997941
genius3d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
пппц понял в чем ошибка.


у меня до этого стоял блок

Код: plaintext
1.
2.
3.
4.
<<-ISQL_END1

...
ISQL_END1

который выгружал в файл данные.
а после него вот этот блок вставил.
Первый блок удалил и все заработало. А чего за фигня, получается больше одного блока ISQL вставлять нельзя?
...
Рейтинг: 0 / 0
10.12.2007, 13:19:38
    #34998006
genius3d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
то есть почему не работает второй блок

Код: plaintext
1.
2.
3.
<<-ISQL_END1

...
ISQL_END1


Код: plaintext
1.
2.
3.
<<-ISQL_END1

...
ISQL_END1


если их так разместить
Главное перспектива!+)
...
Рейтинг: 0 / 0
10.12.2007, 14:29:03
    #34998300
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
в смысле потом в скрипте ещё раз обращение к isql?
Можно ведь и по-разному метки обозвать!
...
Рейтинг: 0 / 0
10.12.2007, 14:31:41
    #34998309
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
хотя у меня и так работает.
Выкладываёте для примера весь скрипт тогда уж.
Отдельные части у вас нормальные, а как они вместе работают - надо или весь скрипт смотреть или телепатией.
...
Рейтинг: 0 / 0
10.12.2007, 15:10:06
    #34998446
genius3d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
--null--в смысле потом в скрипте ещё раз обращение к isql?
Можно ведь и по-разному метки обозвать!

ну да второе обращение:

$SYBASE/bin/isql -U$DBA -P$PWD -b -s"" -w100 -o $LOGDIR/result.txt<<-ISQL_END1
set nocount on
use $maybase
go
select a1 from table1 where b1 =4
go
ISQL_END1

и вот оно не работает. удаляем первый блок и начинает работать
пробовал обзывать метки у второго ISQL_END2, но все равно тоже самое получается.
...
Рейтинг: 0 / 0
10.12.2007, 15:55:09
    #34998670
genius3d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
кстати у меня солярка стоит и ася 12.5
...
Рейтинг: 0 / 0
10.12.2007, 20:17:06
    #34999479
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
isql в соляре такая же как в линухе, а вот shell проприетарный. Но в указанных конструкциях всё Bourn-овское, сам не люблю новомодностей.
Итак, нужен полный текст скрипта, который не работает. Или неработающий пример - но _целый_.
Иначе - гадания на кофейной гуще.
...
Рейтинг: 0 / 0
11.12.2007, 17:16:51
    #35001958
genius3d
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с SYBASE
короче забил - разбил по разным скриптам)
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Работа с SYBASE / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]