Программирование >>  Программный интерфейс приложений 

1 ... 27 28 29 [ 30 ] 31 32 33 ... 264


Очевидно, что необходимо быть достаточно осторожными с такими запросами.

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

mysql> INSERT member (last name, first name) -> VALUES(York, Jerome);

После этого стало понятно, что бьша пропущена дата окончания срока членства. Это легко поправимо;

mysql> UPDATE member

-> SET expiration=2001-7-20

-> WHERE last name = York AND first name = Jerome;

Можно модифицировать несколько столбцов одновременно. Этот запрос изменит адреса электронной и обычной почты одновременно:

mysql> UPDATE member

-> SET email = jeromey8aol.com, street = 123 Elm St, city = Anytown,

-> state = NY, zip=01003

-> WHERE last name = York AND first name = Jerome;

Можно присвоить значениям столбцов пустое значение (если столбец их имеет). Допустим, Джером рещил заплатить большой членский взнос, что позволяет ему стать пожизненным членом. Это можно зафиксировать, установив дату истечения срока полномочий в NULL (никогда не наступает):

mysql> UPDATE member

-> SET expiration=NULL

-> WHERE last name = York AND first name = Jerome;

Для оператора UPDATE так же, как и для оператора DELETE верно утверждение, что нужно проверять правильность предложения WHERE с помощью оператора SELECT. Если ваш критерий выборки слишком широк, то модифицируется слишком много записей, если слишком узок ~ слишком мало.

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

Модификация структуры таблиц

Помните, как была создана таблица member базы данных Историческая Лига ? Там недоставало столбца членский номер . Автор тогда пообещал воспользоваться оператором ALTER TABLE. С помощью этого опе-



ратора можно переименовывать, добавлять и удалять таблицы и т. д. Здесь будет показан только один пример того, как можно добавить новый столбец. На что способен в действительности оператор ALTER TABLE, можно прочитать в главе 3, Синтаксис и использование языка SQL .

Основной целью добавления столбца с членским номером в таблицу member была уникальность значений. Здесь будет уместен параметр AUTO INCREMENT, так как ЭТО ПОЗВОЛИТ создавать уникальные номера автоматически. Такая спецификация будет иметь вид:

member id INT UNSIGNED NOT NULL AUTO INCREMENT PRIMARY KEY

Синтаксис оператора ALETR TABLE аналогичен. Запустите запрос:

mysql> ALTER TABLE member

->ADD member id INT UNSIGNED NOT NULL AUTO INCREMENT PRIMARY KEY;

Теперь у нас есть новый столбец для хранения членских номеров. Как присваиваются номера существующим записям? СУБД MySQL автоматически присваивает столбцу значения по умолчанию. В случае объявления столбца с параметром AUT0 INCREMENT в каждой новой строке генерируется новый последовательный номер.

Как работать с mysql

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

Упрощение процесса подключения

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

Храните параметры подключения в файле конфигурации.

Воспользуйтесь возможностью повторения команд из журнала регистрации.

С помощью псевдонима или сценария оболочки задайте ярлык командной строки mysql.

Использование конфигурационных файлов

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



например, mysqlimport. Конфигурационный файл упростит процесс ввода команд.

Создадим файл -/.my.cnf (т.е. файл под именем my.cnf в вашем корневом каталоге). Этот файл является текстовым файлом, который можно создать с помощью простейшего текстового редактора. Его содержимое должно выглядеть следующим образом:

[client]

host=serverhost

user=yourname

password=yourpass

Строка [client] идентифицирует начало фуппы опций данного клиента. Каждая последующая строка считывается СУБД MySQL как значение опции клиентской профаммы. Завершается информация концом файла или началом группы опций другого клиента. Здесь нужно заменить serverhost, yourname и yourpass именем вашего сервера, вашим именем и паролем. Например, мой .my.cnf выглядит следующим образом: [client]

host=pit.viper.snake.net

user=paul

password=secret

Здесь является обязательной только строка [client]. Строки, определяющие значения параметров, могут быть опущены; можно указывать только те, которые необходимы. Например, если ваше имя пользователя в базе данных совпадает с именем пользователя ОС UNIX, то его можно не указывать и не включать в строку user.

После создания файла ту. cnf рекомендуется офаничить к нему доступ:

%chmod 600 .my.cnf

При работе в ОС Windows конфигурационный файл содержит те же команды и имя с \ту. cnf, однако запуск команды climod в этой операционной системе невозможен.

Такая возможность в версиях меньше 3.22 отсутствует. В частности, такая возможность отсутствует в бесплатной дистрибуции СУБД MySQL для ОС Windows. Возможность работы с конфигурационными файлами есть в зарегистрированных версиях СУБД MySQL для ОС Windows. Кроме того, с Web-узла MySQL можно зафузить новые версии клиентских программ, работающих с конфигурационными файлами.

Более подробную информацию о конфигурационных файлах можно найти в приложении Д, Программы MySQL .

Использование журнала регистрации

Такие оболочки как csli, tcsli и bash запоминают отработанные команды в журнале регистрации. Это позволяет вызывать команды непосредственно из журнала регистрации без их повторного ввода. На-



1 ... 27 28 29 [ 30 ] 31 32 33 ... 264

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