2009-09-17 3 views
0

Что необходимо для схемы базы данных (встроенной в БД), если я могу настроить структуру базы данных MySQL и написать инструкции CRUD для работы с ней напрямую? Я никогда не работал с ними, но я предполагаю, что они предназначены только для оптимизации производительности?Зачем нужна схема базы данных MySQL?

Я знаю схемы диаграмм, которые могут быть экспортированы в качестве .sql команд, которые генерируют структуру БД, например, с MySQL Workbench.

ответ

1

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

Это, безусловно, пригодится, когда вам нужно научиться с первого взгляда, как выкладывается база данных или сообщать другим людям ваш дизайн БД. И иногда проще редактировать графическое представление вместо использования предложений DDL.

Если вы хотите знать, где в БД хранится схема, она отображается через стандартные таблицы INFORMATION_SCHEMA. Конечно, DDL находится в базе данных (иначе как db умеет хранить данные)

+0

В: Есть ли способ сохранить схему внутри БД для производительности? Есть ли необходимость в этом? –

+0

Схема * is * в базе данных. Вы можете запросить информацию INFORMATION_SCHEMA, чтобы узнать все, что нужно знать о схеме БД –

0

Ну, вы могли бы создать каждый столбец в базе данных, как VARCHAR (255), но результат будет невероятно медленным.

Подумайте, как работает база данных: у нее есть индекс (подумайте об индексе в словаре). Он просматривает индекс и находит правильную запись (правая страница в словаре). Затем он возвращает запись.

Если индекс мал, поиск выполняется быстро - поскольку больше «страниц» индекса может сразу вписываться в память (просто подумайте об этом - не проще ли просматривать индекс словаря, если это 2 страницы вместо 500?). Таким образом, использование целочисленного индекса для запросов значительно быстрее, чем использование индекса строки.