прикрепленного архива
1. Загрузить базу данных geodata из2. Привести таблицы базы данных geodata в надлежащий вид
Таблица _countries
FIELD | TYPE | NULL | KEY | EXTRA |
---|---|---|---|---|
id | INT | NOT | Primary Key | auto_increment |
title | VARCHAR(150) | NOT | INDEX |
Таблица _regions
FIELD | TYPE | NULL | KEY | EXTRA |
---|---|---|---|---|
id | INT | NO | Primary Key | auto_increment |
country_id | INT | NO | Foreign Key _countries (id) | |
title | VARCHAR(150) | NO | INDEX |
Таблица _cities
FIELD | TYPE | NULL | KEY | EXTRA |
---|---|---|---|---|
id | INT | NO | Primary Key | auto_increment |
country_id | INT | NO | Foreign Key _countries (id) | |
important | TINYINT(1) | NO | ||
region_id | INT | NO | Foreign Key _regions (id) | |
title | VARCHAR(150) | NO | INDEX |
Обратите внимание на два момента.
- В схемах есть неточность. В таблице cities поле regionid НЕ должно быть not null, т.к. у нас есть записи с пустыми значениями, и система просто-напросто не даст нам создать такое ограничение. Оставляйте это поле без ограничения.
- В методичке рекомендуют все команды alter table написать в файл и импортировать его. Я не советую так делать, лучше запускать команды по одной. Это дает больше контроля. Сдать задание нужно в виде файла .sql с командами DDL (alter table …), которыми вы преобразуете базу данных.
Если вы выполняете задание в графическом редакторе, сохраняйте сгенерированные команды. Или попробуйте написать их самостоятельно.
На изменение схемы может уйти очень много времени (до 1 часа), так что не пугайтесь, если команда заставит вас подождать.
Для проверки результатов работы могут быть полезны следующие команды:
SHOW CREATE TABLE`<yourtable>`;
SHOW COLUMNS FROM`<yourtable>`;