Forum Webscript.Ru

Программирование => Perl => Тема начата: Dart Sidius от 19 Марта 2005, 12:16:17

Название: disconnect в DBI
Отправлено: Dart Sidius от 19 Марта 2005, 12:16:17
Возник такой вопрос...коннекчусь к базе
$dbh = DBI->connect("DBI:mysql:database=$sql_database;host=$sql_hostname;port=$sql_port", $sql_user, $sql_password) || die $DBI::errstr;

делаю чего-нибудь

потом

$dbh->disconnect() - разрываю соединение...
но почему то я потом и дальще могу работать с переменной $dbh...т.е.. получается от сервака я отконнектился а переменная просто содержит данные, которые я снял раньше?
Название: disconnect в DBI
Отправлено: ondr от 19 Марта 2005, 13:30:50
from perldoc DBD::mysql

Цитировать

DBD::mysql has a "reconnect" feature that handles the so-called
MySQL "morning bug": If the server has disconnected, most probably
due to a timeout, then by default the driver will reconnect and
attempt to execute the same SQL statement again. However, this
behaviour is disabled when AutoCommit is off: Otherwise the
transaction state would be completely unpredictable after a
reconnect.  


Т.е. так и задуманно ; )
Название: disconnect в DBI
Отправлено: Dart Sidius от 19 Марта 2005, 18:03:03
А ещё такой вопрос...обязательно ли тогда использовать $dbh->disconnect() ?...получается что через некоторое время сервер сам порвёт соединение:?
Название: disconnect в DBI
Отправлено: ondr от 19 Марта 2005, 18:18:09
В perldoc DBI этому посвящен достаточно большой обзац, чтобы его выкладывать сюда. Рекомендую прочитать.
Также рекомендую к прочтению perldoc Apache::DBI по части disconnect\'а, если данный модуль планируется использовать.
Название: disconnect в DBI
Отправлено: Dart Sidius от 20 Марта 2005, 06:23:13
Ты на пальцах объясни....я использую только модуль DBI...я слышал что вообще после окончания работы скрипта соединение само закроется без проблем
Название: disconnect в DBI
Отправлено: Dart Sidius от 20 Марта 2005, 12:51:47
...ответьте пожалуйста на сабж
Название: disconnect в DBI
Отправлено: ondr от 20 Марта 2005, 13:51:13
Дальнеейшее продолжение данной темы в том же духе может быть воспринято как флуд. В документации дан предельно четкий ответ по этой теме включая все возможные нюансы.
Название: disconnect в DBI
Отправлено: Dart Sidius от 21 Марта 2005, 05:17:52
Тебе что ответить сложно?...кто интересно таких модераторов набрал....
Название: disconnect в DBI
Отправлено: NeoNox от 21 Марта 2005, 16:03:29
Dart Sidius, ondr и так тебе больше чем нужно подсказал.
Никто за тебя читать перлдок не будет. Запомни это.

Тема закрыта.