Search the MySQL manual:
MySQL Manual

Buy this Reference Manual in softcover from Barnes & Noble!

/ / Up / Table of Contents

8.4.3.163 mysql_ping()

int mysql_ping(MYSQL *mysql)

8.4.3.164 Описание

Проверяет, работает ли данное соединение с сервером. Если соединение прервано, то пытается автоматически восстановить его.

Эта функция может использоваться клиентами, долгое время находящимися в состоянии простоя, для проверки, закрыл ли сервер данное соединение, и для восстановления соединения при необходимости.

8.4.3.165 Возвращаемые значения

Нуль, если сервер в активном состоянии. Величина, отличная от нуля, если произошла ошибка.

8.4.3.166 Ошибки

CR_COMMANDS_OUT_OF_SYNC
Команды были выполнены в ненадлежащем порядке.
CR_SERVER_GONE_ERROR
Сервер MySQL неожиданно завершил работу.
CR_UNKNOWN_ERROR
Произошла неизвестная ошибка.

User Comments

Posted by on Monday February 3 2003, @3:52am [Delete] [Edit]

Warning:
mysql_ping() will try to rebuild the connection. If it fails, a second mysql_ping() will core the process. You need to use mysql_real_connect() or mysql_connect() to completly rebuild the connection after a failed mysql_ping(). From time to time, the current thread ID, who's already inactive/disconnected, is hanging arround so before rebuilding the connection, execute a mysql_kill(&db, mysql_thread_id(&db)) it will just clean up your
path ;)
Be aware of this bug. mysql_ping() should return an error if the MYSQL structure is invalid and also another return code for a 'broken but rebuilded connection'. Maybe in the next releases of the C API? ;)

Add your own comment.

Top / / / Up / Table of Contents