Программирование > Perl
как отключить сообщения об ошибках консоль
(1/1)
Sun Ja:
имеется консольный скрипт на языке перл.
строка вида:
sub mysql_qwery {
$sth=$dbh->prepare($_[0]);
$sth->execute;
$sth->finish;
}
mysql_qwery("INSERT INTO baze.tmp_cat_keyword$prefix VALUES (0,\'$idbook\',\'$k\');") ;
выводит в консоль множество строк:
DBD::mysql::st execute failed: Dudlicate entry \'......\' for key 2 at ... line 37
как можно отключить вывод сообщений об ошибке именно в этом участке кода?
demond:
попробуй в начале написать
use DBI;
use DBD::mysql;
Sun Ja:
--- Цитировать ---demond:
попробуй в начале написать
use DBI;
use DBD::mysql;
--- Конец цитаты ---
это у меня написано.
сам DBD-mysql работает
ravshaniy:
Вот это может помочь наверное:
http://search.cpan.org/~timb/DBI-1.607/DBI.pm#PrintWarn_(boolean,_inherited)
вроде как прагму warnings можно также использовать
--- Код: ---no warnings; #отмена всех сообщений компилятора
--- Конец кода ---
если конечно скрипт не выполняется с праметром -W;
и еще там написано что параметр -X действует как
--- Код: ---no warnings \'all\';
--- Конец кода ---
и еще можно сделать например так
--- Код: ---sub mysql_qwery {
$sth=$dbh->prepare($_[0]);
{
no warnings;
$sth->execute;
}
$sth->finish;
}
--- Конец кода ---
по крайней мере так написано
arto:
использовать execute_array с параметрами.
Навигация
Перейти к полной версии