Rem Hmysql.bat Запуск с любого места диска

c:\Webservers\usr\local\mysql5\bin\mysql -h localhost -u root -D books -p --character-sets-dir="c:\Webservers\usr\local\mysql5\share\charsets" < lab13_00.sql

Рис. 3.175. Состав BAT файла для работы с командной строки Hmysql.bat.

 

Символ < перед именем файла сценария lab13_00.sql для построения таблиц базы данных Books на рис. 3.175 обозначает операцию перенаправления для операционной системы. Монитор MySQL запустится из адреса:

c:\Webservers\usr\local\mysql5\bin\mysql.exe.

В качестве параметров запуска ему будет передана строка:

-h localhost -u root -D books –p.

Ключ –h используется для указания хоста, к которому надо подключиться (в нашем случае сервер Mysql находится на текущей машине).

Ключ –u указывает на имя пользователя, который подключается к серверу (в нашем случае сервер установлен на вашем собственном компьютере – поэтому имя его root, что обозначает привилигированного пользователя). Если Mysql используется на компьютере, администратором которого является кто-либо другой, применяйте имя пользователя выданное Вам администратором.

Ключ -D указвыает что будет проводится работа с базой данных books.

Ключ –p сообщает серверу о том, что Вы хотите соедениться с ним с использование пароля.

 

Строка

character-sets-dir="c:\Webservers\usr\local\mysql5\share\charsets"

необходима из-за того тем, что используется Денвер и путь к MySQL не указан в пути поиска машины.

Если Вы будете использовать командный файл Hmysql.bat. то прежде чем будут созданы таблицы базы данных (указанные в листинге 3.174) Вам необходимо ответить на вопрос следующего вида:

(см. рис. 3.179).

 

Рис. 3.176. Вызов командного процессора CMD.exe из командной строки файлового менеджера Total Commander.

 

Подтверждение команды на рис. 3.176 приведет к следующему Dos окну (рис. 3.177):

 

Рис. 3.177. Результат использования команды CMD.

 

Обратите внимание, что запуск CMD произведен из папки в которой находится командный файл HMYSQL.bat (рис. 3.175). Если в Dos приглашении указать имя этого файла (рис. 3.178), то его исполнение (Enter) приведет к созданию таблиц, указанных в сценарии файла lab13_00.sql (рис. 3.174).

 

Рис. 3.178. Уназание файла HMySQL.bat в Dos приглашении.

 

Если база данных с именем books открыта, то нажатие Enter в окне рис. 3.178 приведет к следующему окну Cmd.exe.

 

Рис. 3.179. Использование команды CMD и файла HMYSQL.bat в командной строке.

 

Правильное указание пароля приведет к следующему приглашению для ввода команды Dos (рис. 3.180) (создание таблиц будет выполнено).

Рис. 3.180. Окно Cmd.exe после исполнения сценария lab13_00.sql.

 

Выход из Cmd.exe возможен через команду

 

Рис. 3.181. Окно Cmd.exe после исполнения сценария lab13_00.sql.

 

Ниже (рис. 3.182) представлено окно PhpMyadmin с результатом работы HMYSQL.bat, т.е. с набором вновь созданных таблиц (рис. 3.183).

Рис. 3.182. Окно PhpMyadmin.

 

Если посмотреть (рис. 3.183) состав таблиц в базе данных, то Вы увидете именно перечень тех таблиц, которые указаны в файле lab13_00.sql (рис. 3.174).

Интересна таблица

Используя пиктограмму () проанализируйте ее состав (рис. 3.184).

 

Рис. 3.183. Окно PhpMyAdmin c составом таблиц базы BOOKS.

Рис. 3.184. Окно PhpMyAdmin c составом таблицы ORDER_ITEMS

базы BOOKS.

 

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

Использованный тип tinyint unsigned для столбца Quantity указывает, что значения в нем могут принимать значения от 0 до 255.

 

Если перейти в монитор MySQL, то набор следующих команд (рис. 3.185) дает состав таблиц интересующей нас базы данных.

 

Рис. 3.185. Окно монитора с составом таблиц базы BOOKS.

Отметьте что в базе BOOKS содержится одноименная таблица books.

Команда DESCRIBE дает возможность увидеть подробную информацию о конкретной таблице хранимой в базе.

 

Рис. 3.186. Окно монитора с описанием таблицы ORDER_ITEMS.