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

1 ... 73 74 75 [ 76 ] 77 78 79 ... 201


Полный список инструкций 241

SQL BIG TABLE {О 1}

По умолчанию временные таблицы хранятся в памяти. Но если данная опция включена, то все временные таблицы будут принудительно выгружены на диск (листинг 13.44).

SET SQL BIG TABLES=1

SQL BUFFER RESULT= {О 1}

Как и в случае одноименного флага инструкции SELECT, эта опция заставляет записывать результаты запросов во временные таблицы с целью ускорения доступа к ним.

Эта опция включает или отключает журнальную регистрацию на главном сервере.

SQL LOG OF {О 1}

Если задать эту опцию равной 1, программа перестанет постлать данные в стандартный журнальный файл. Чтобы выполнить подобное ение, пользователь должен иметь привилегию PROCESS.

SQL LOG UPDAT {О 1}

Если задать эту опцию равной 0, программа перестанет пос1лать данные в файл регистрации обновлений. Чтобы выполнить подобное изменение, пользователь должен иметь привилегию PROCESS.

Эта опция отключена поумолчанию. Если ее включить, все запросы на изменение значений столбцов начнут получать более низкий приоритет, чем инструкции SELECT. В этом случае инструкции DELETE, INSERT, LOCK TABLES WRITE и UPDATE будут блокироваться до завершения всех операций чтения.

SQL MAX JOIN SIZ змер DEFAULT}

Эта опция позволяет задать максимальное число объединений, допустимых в запросе. Если значение опции будет отличаться от того, что установлено по умолчанию, описанная вышеопция SQL BIG SELECTS будетотключена.

SQL QUOTE SHOW CREAT {О 1}

По умолчанию инструкция SHOW CREATE TABLE помещает кавычки вокруг имен столбцов и таблиц. Если задать данную опцию равной нулю, кавхчки выводиться не будут.



SQL SAFE MOD {О 1}

Когда эта опция включена, все запросы на обновление и удаление, в которых не указан первичный ключ, отменяются. Подобный режим предназначен для новичков, которые способны ненароком ввести запрос, затрагивающий все записи таблицы.

SQL SELECT LIMI едел DEFAULT}

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

SQL SLAVE SKIP COUNTER = число позиций

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

TIMESTAMP времени DEFAULT}

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

SET TRANSACTION

Инструкция SET TRANSACTION задает уровень изоляции транзакции. Ее формат

таков:

SET [GLOBAL SESSION] TRANSACTION LEVEL

[READ UNCOMMITTED [READ COMMITTED REPEATABLE READ SERIALIZABLE]

По умолчанию инструкция затрагивает только ближайшую транзакцию. Если указан флаг GLOBAL, изменения коснутся всех транзакций, выполняемых на сервере. Флаг SESSION обозначает все транзакции данного сеанса.

Уровень изоляции определяет, к каким данным, с которыми работает транзакция, смогут получить доступ другие потоки. В режиме READ UNCOMMITTED транзакция может читать данные из таблиц напрямую, не проверяя, окончательные это данные или нет. Другим потокам разрешено менять содержимое этих таблиц, не дожидаясь завершения транзакции. Таким образом, в ходе транзакции можно выполнить один и тот же запрос дважды подряд и получить разные результаты.

В режиме READ COMMITTED транзакция работает только с окончательными данными. Изменения, вносимые другими потоками, не отразятся в запросе на выборку до тех пор, пока не будут зафиксированы. Тем не менее по-прежнему существует возможность того, что один и тот же запрос, выполненный дважды в ходе одной транзакции, выдаст разные результаты, так как между первым и вторым запросом другой поток может успеть выполнить собственную транзакцию.

В режиме REPEATABLE READ любая строка, читаемая или обновляемая в ходе транзакции, не может быть изменена другим потоком. Транзакция блокирует все строки, к которым обращается. Таким образом, значения, извлекаемые инструкцией



Полный список инструкций 243

SELECT, никогда не меняются в течение транзакции. Но возможно появление строк-призраков, т.е. во время транзакции можно увидеть строку, добавленную другой транзакцией.

В режиме SERIALIZABLE транзакции принудительно втполняются друг за другом, последовательно. Несколько потоков могут начинать транзакции одновременно, но если окажется, что две транзакциипытаются обновить одну и ту же строку, одна из них будет объявлена проигравшей в тупиковой ситуации и отменена. Это наивысший уровень целостности данных.

SHOW COLUMNS

Инструкция SHOW COLUMNS возвращает описание столбцов таблицы. Она имеет следующий синтаксис:

SHOW [FULL] {COLUMNS I FIELDS}

FROM таблица [FROM анных] [LIKE шаблон]

Флаг FULL задает выдачу дя каждого столбца информации о привилегиях. Предложение LIKE позволяет отобрать из таблицы только те столбцы, имена которых соответствуют указанному шаблону. Синтаксис строки шаблона был описан в главе 10, Типы данных, переменные и выражения . Аналогичные результаты выдает инструкция DESCRIBE.

mysql> SHOW COLUMNS FROM team;


SHOW CREATE TABLE

Инструкция SHOW CREATE TABLE возвращает описание запроса, который необходим для создания указанной таблицы. Синтаксис инструкции таков:

SHOW CREATE TABLE таблица

В листинге 13.46 показаны результаты, выдаваемые в случае таблицы mysql .db. Обратите внимание на то, что имена столбцов заключены в обратные кавычки. Если установить опцию SQL QUOTE SHOW CREATE,кавычки не будут отображаться, но они необходимы, когда есть имена столбцов с пробелами.



1 ... 73 74 75 [ 76 ] 77 78 79 ... 201

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