Оригинал этой записи. Комментировать можно тут или там.
March 24th, 2010
https://sysadmins.ru/topic258827.html
Среда – маленькая пятница.
Оригинал этой записи. Комментировать можно тут или там.
Сегодня на повестке дня две задачи:
1) Волею судеб вы случайно удалили у команды chmod права на выполнение. Как вернуть их обратно? Под рутом, конечно. Без этого вы бы их и не удалили.
2) Как в шелле (для определённости пусть будет bash) привязать команду к клавише, чтобы, скажем, при нажатии просто “1″ (без Enter) выполнялась команда (например, uname -a). Вопрос возник из https://ru-freebsd.livejournal.com/194430.html, ответ есть там в комментах.
Оригинал этой записи. Комментировать можно тут или там.
Пишем простейшую хранимую процедуру, которая умеет иногда генерировать исключения:
CREATE PROCEDURE tmp_proc (
p_foo int
)
IF p_foo = 0 THEN
RAISE EXCEPTION -746, 0, "tmp_proc-raised exception";
END IF
END PROCEDURE;
Вызываем её из перла посредством DBD::Informix:
“EXECUTE PROCEDURE tmp_proc (p_foo = ?)”, prepare, execute..
Как ожидалось, получаем
DBI::err = '-746', DBI::errstr='SQL: -746: tmp_proc-raised exception'
Преобразуем процедуру в функцию:
CREATE PROCEDURE tmp_func (
p_foo int
)
RETURNING int;
DEFINE foo int;
IF p_foo = 0 THEN
RAISE EXCEPTION -746, 0, "tmp_func-raised exception";
END IF
LET foo = p_foo+1;
RETURN foo;
END PROCEDURE;
“EXECUTE PROCEDURE tmp_func (p_foo = ?)”, prepare, execute..
И фиг там. execute успешно отрабатывает, возвращает 0E0, DBI::err и DBI::errstr совершенно undefined, всё прекрасно, никаких ошибок.
А вот если потом вызвать fetchrow_array(), то только тогда
DBI::err = '-746', DBI::errstr='SQL: -746: tmp_func-raised exception'.
Что совсем плохо, если какой-нибудь fetch() совсем не вызывать, то функция, похоже, совсем не запускается. Либо результаты её работы откатываются. Потому что изначально я на это наткнулся на функции, которая проверяет данные, добавляет строку в таблицу и возвращает ID от добавленной строки. Вот если этот ID потом не считать с помощью fetch, то данные в таблицу вообще не попадают.
Я даже не понимаю, куда тут копать..
Оригинал этой записи. Комментировать можно тут или там.
Что я могу сказать по этому поводу? Вконец охуевшие пидарасы. Не удивлюсь, если их начнут отстреливать поштучно. Есть, за что.
via
drugoi
Оригинал этой записи. Комментировать можно тут или там.
