Как хранятся данные в базе данных

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

У каждой записи в таблице есть свой уникальный код

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

Вы заметили, что при создании объекта сразу создается какое-то поле Код? Вот в это поле и записываются уникальные значения из счетчика.

Конечно, обычным пользователям коды записей показывать не нужно, но о их наличии нужно знать. И вот почему.

Таблицы связаны по коду

Как было сказано выше, база данных — это набор связанных таблиц. Таблицы связаны между собой по коду. Рассмотрим простой случай. Допустим, что у нас есть таблица продаж:

У каждой продажи указана компания и продукт. Но на самом деле в таблице продаж в место названия компании указан код компании, а вместо названия продукта указан код продукта. Просто вместо кодов подставляются названия из других таблиц.

Кстати, у таблицы продаж тоже есть свое поле код. Но сейчас это не важно.

Если изобразить схему базы данных, состоящую из описанных трех таблиц, то она будет такая:

У нас три таблицы и две связи. Компания и Продукты — родительские объекты, а Продажи — дочерний объект.

Связь между таблицами создается путем:

  • создания поля-ссылки (с указание внешнего, т.е. родительского объекта) или
  • добавления связи (с указанием дочернего объекта).

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

При удалении связи (или поля-ссылки) поле связи удаляется и все данные (целые числа) которые в нем были пропадают.

Так что будьте внимательны при удалении связи. Если у вас есть уже есть набитая база из клиентов и продаж и вы разрываете связь между этими объектами, то продажи и клиенты у вас конечно останутся, но сами по себе. Т.е. будет список компаний и список продаж никак не связанных между собой. Не будет видно кому сделаны продажи. Можно конечно снова связать объекты, но поле связи будет пустым и вам придется его снова указывать, но вручную и для каждой записи продажи.