Программирование >>  Создание клиентов mysql 

1 ... 43 44 45 [ 46 ] 47 48 49 ... 201


Отладка и конфигурирование

Описанные ниже функции возвращают информацию о сервере либо помогают при отладке.

ВЕЫСНМАИК(циклы, значение)

Функция BENCHMARK) вычисляет требуемое выражение столько раз, сколько указано в первом аргументе. Она всегда возвращает нуль, но если используется клиент mysql, то будет также подсчитано время, затраченное на выполнение функции. В листинге 12.1 показано, сколько времени ушло на выполнение 100000 вызовов функции SOUNDEX (). Здесь подразумевается время, прошедшее с момента ввода запроса до момента получения его результатов, а не время использования центрального процессора. Время выполнения функции может существенно замедляться из-за загруженности сервера или сети.

mysql> SELECT BENCHMARK(100000, SOUNDEX(Core));

+------------------------------------+

I BENCHMARK(100000, SOUNDEX{Core)) I + -----------------------------------+

I 0 I

+------------------------------------+

1 row in set (0.26 sec)

CONNECTlON lD()

Эта функция возвращает идентификатор текущего соединения (листинг 12.2).

Листинг 12.2. . .- -

I CONNECTION IDО I

I 91 I

1 row in set (0.00 sec)

DATABASEl)

Эта функция возвращает имя стандартной базы даннгх (листинг 12.3). Если таковая не выбрана, возвращается NULL.



Отладка и конфигурирование


LASTJNSERTJD([идeнтификaтop])

Для каждого соединения программа MySQL хранит последнее значение счетчика, служащего первичным ключом. Функция LAST INSERT ID {) возвращает это значение (листинг 12.4). Если функции передать аргумент, она установит его в качестве нового значения счетчика.


mysql> INSERT INTO item VALUES (NULL ap, 3.75, 3-Pack, 200);

Query OK, 1 row affected (0.06 sec)

mysql> SELECT LAST INSERT ID();


Существуют два основных применения функции LAST INSERT IO Чаще всего она используется со столбцами типа AUTO INCREMENT. Если вследствие какого-либо запроса значение данного столбца увеличивается автоматически, то это значение запоминается и впоследствии возвращается функцией Если же значение столбца задается вручную, то на функции это никак не отражается. В листинге 12.4 первый аргумент предложения VALUES инструкции INSERT равен NULL, что приводит к автоматическому увеличению счетчика.

С другой стороны, с помощью функции LAST INSERT ID () можно имитировать последовательные счетчики, связав ее с таблицей, состоящей из одного столбца. Об этом подробно рассказывалось в главе 9, Транзакции и параллельные вычисления .



SESSION USER()

Это синоним функции USER {).

SYSTEM USER()

Это синоним функции USER ().

USER()

Эта функция возвращает имя пользователя, начавшего текущий сеанс работы с сервером (листинг 12.5). Сообщается также имя компьютера, за которым работает пользователь.

mysql> SELECT USER(); USER I


VERSIONO

Эта функция сообщает номер версии сервера MySQL (листинг 12.6).

mysql> SELECT VERSIONO ; VERSION


Управляющие функции

Описанные ниже функции управляют выполнением программного кода. Функции CASE и CASE WHEN реализованы подобно инструкциям языков третьего поколения и не используют скобки, но в остальном они аналогичны функциям. Две функции блокирования, а также функция, заставляющая главную базу данных дождаться синхронизации подчиненной базы данных, полезны при работе в многопользовательской среде.



1 ... 43 44 45 [ 46 ] 47 48 49 ... 201

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика