Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
Учебное пособие по ИТ в менеджменте.doc
Скачиваний:
54
Добавлен:
28.03.2016
Размер:
1.58 Mб
Скачать
Вопросы.
-
Основные понятия
баз данных. Виды баз данных. -
Иерархические
базы данных. Сетевые базы данных.
Реляционные базы данных. -
Этапы создания
реляционной базы данных. -
Типы информационных
связей в моделях данных. -
Реализация базы
данных средствами СУБД MS
Access.
Понятие структуры базы данных. Схема
данных. Виды форм. Виды запросов. Виды
отчетов. -
Алгоритм построения
БД в СУБД MS
Access
|
База |
|
По
|
|
Реляционные базы |
|
Особенности
—
—
—
— |
|
Система |
|
Ведение базы
Ведение базы
|
|
Разработка |
|
Реквизит
Каждый
Строки
Ключ — это |
|
Этапы
|
|
1
Исходными данными
На этом этапе
Концептуальная |
|
Логическое
На этом этапе
Для реляционных |
|
Физическое Оно |
|
Типы информационных
|
|
Основные подходы
функциональный объектный подход |
|
Функциональный
При таком подходе
|
|
Объектный
|
|
В |
|
Для
Описание предметной |
|
Информационные |
|
Построение |
|
Переход от
1. Каждый
2. Реквизиты
3. Ключи |
|
База |
|
Microsoft
Первый |
|
Второй |
|
При |
|
В
Этот |
|
В
|
|
Типы полей БД
Тип поля:
Размер поля типа |
|
Типы полей БД
Тип
|
|
Типы полей БД
Тип
Этот тип данных |
|
Тип |
|
Тип |
|
Тип |
|
Тип |
|
Тип |
|
При |
|
Ввод
|
|
В
Простые
Простая
|
|
Составные
Подчиненная |
|
Применение
|
|
В
Наиболее |
|
Использование
Отчеты
В |
Вопросы для
закрепления материала по теме 7:
-
Что такое база
данных (БД) и система управления базами
данных (СУБД)?
2. Какие задачи
решаются применением баз данных?
3. Дайте понятие
поля и записи БД.
4. Какие существуют
этапы проектирования БД?
5. Какие базы
данных называются реляционными?
6. Что такое
информационно-логическая модель?
7. Какие существуют
типы информационных связей в БД?
8. Что такое
структура таблицы в Access?
9. Какие типы
полей имеются в Access? Приведите примеры
их использования при построении баз
данных для сферы СКС и Т.
10. Какие функции
выполняет в Access схема данных?
11. Какие
существуют способы ввода данных в
таблицы Access?
12. Что такое
ключевое поле?
13. Основные
возможности СУБД Access.
14. Назовите три
способа создания таблицы в Access.
15. Как задать
свойства полей таблицы?
16. Что такое
запрос с параметрами и как его создать?
17. Как создать
многотабличный запрос?
18. Как создать
вычисляемое поле?
19. Для чего
нужны формы и какие они бывают?
20. Какие способы
создания форм вы знаете?
21. Как создать
форму для загрузки главной и подчиненной
таблиц одновременно?
22. Как создать
отчет в Microsoft Access?
Тест по теме 7.
-
База данных — …
-
Это совокупность
специальным образом организованных
и взаимосвязанных данных по конкретной
предметной области, хранимых на внешних
носителях информации и управляемых
СУБД. -
Это совокупность
программных и языковых средств,
предназначенных для ведения баз данных -
Это совокупность
специальным образом взаимозависимых
данных, хранимых на внутренних носителях
компьютера. -
Это совокупность
данных, программных и языковых средств
одного или нескольких компьютеров.
-
-
Виды баз данных
-
Реляционная БД
-
Сетевая
-
Управляемая
-
Иерархическая
-
-
Неделимая с точки
зрения смыслового описания предметной
области единица информации, отражающая
качественную или количественную
характеристику объекта (процесса)
называется…-
Реквизит
-
Данные
-
Показатель
-
Таблица БД
-
-
Известны следующие
типы информационных связей междуобдельными
реквизитам базы данных-
Один-к-одному
-
Один-к-множеству
-
Один-ко-многим
-
Многие-ко-многим
-
-
На этапе логического
проектирования …-
Осуществляется
выбор подходящей системы управления
базами данных и представление
инфологической модели предметной
области в форме структуры базы данных
конкретной СУБД. -
Предполагается
определение способов и мест размещения
базы данных, оценку ее объема и других
параметров. -
Решается вопрос
о том, какие данные должны храниться
в базе и какого типа информационные
выборки и отчеты могут потребоваться
пользователю. -
Проводится
словесная и документальная характеристика
предметной области, которая может быть
получена в результате предварительного
исследования.
-
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
Это прислал hc.ru для www.ksoftware.ru
——- ниже то, что прислал хостер ———
Здравствуйте!
Информация для доступа к базе данных MySQL wwwksoftwareru_phpBB
Хост: db.ksoftwar.mass.hc.ru
Логин: ksoftwar_phpBB
Пароль: ********
Подробнее об использовании базы данных MySQL можно узнать раздела «Помощь» (http://help.hc.ru/)
По всем вопросам обращайтесь в службу поддержки.
—
С уважением, Хостинг-Центр РБК
Офис в Москве
тел.: +7 (495) 544-55-66
e-mail: hosting@hc.ru
Офис в Санкт-Петербурге
тел.: +7 (812) 448-30-04
e-mail: hosting@spb.hc.ru
Hello!
Information for access to MySQL database wwwksoftwareru_phpBB
Host: db.ksoftwar.mass.hc.ru
Login: ksoftwar_phpBB
Password: ********
More detailed information about the use of MySQL database you can find in section «Help» (http://help.hc.ru/)
Please contact our Support Service if any further information is required:
—
Best Regards, Hosting-Center RBC
Moscow office
tel.: +7 (495) 544-55-66
e-mail: hosting@hc.ru
St.-Petersburg office
tel.: +7 (812) 448-30-04
e-mail: hosting@spb.hc.ru
О чем речь? Атрибуты данных – это необходимый элемент базы, который представляет собой какую-либо характерную и уникальную информацию. Например, это может быть число, имя и т. д.
На что обратить внимание? Для решения различных задач используются определенные типы атрибутов. Каждый из них требует особых ключей и ссылок, а также выбора одного из нескольких методов исполнения.
В статье рассказывается:
- Понятие и место атрибута
- Примеры атрибутов
- Виды атрибутов
- Методы исполнения атрибутов
-
Пройди тест и узнай, какая сфера тебе подходит:
айти, дизайн или маркетинг.Бесплатно от Geekbrains
Понятие и место атрибута
При описании процесса организации систем управления базами данных (СУБД) с древовидной структурой используются такие понятия, как элемент, агрегат, запись, групповое отношение, БД.
- Атрибуты данных являются минимальной единицей их структуры. При описании БД каждому ее элементу дается отдельное имя, по которому его вызывают в ходе обработки базы данных (элемент иногда именуется полем).
- Записями называют комплекс атрибутов с наименованием. Благодаря им можно в ходе одного обращения к БД получить связанный комплекс данных. С записями выполняются операции добавления, удаления и изменения. Их тип устанавливается набором атрибутов. В свою очередь экземпляр записи – конкретная строка с определенными значениями элементов.
- Групповое отношение – иерархическое расположение строк двух типов. Родительская или исходная запись выступает «владельцем» такой иерархии, а дочерняя выступает по отношению к ней подчиненной. В древовидной БД записи может сохраняться лишь две иерархические структуры.
В корневой записи отдельной структуры в обязательном порядке содержится уникальный ключ, а для некорневой требование по уникальности действует исключительно в пределах группового соотношения. Идентификация любого комплекса атрибутов (записи) происходит с использованием сцепленного ключа (система, включающая все ключи записей, начиная от корневой и далее по расположению в структуре дерева).
В графическом виде иерархическое расположение записей осуществляется с помощью дуг ориентированного графа. Типы строк отображаются записей – вершинами диаграммы Бахмана.
В древовидной структуре в отношении групповых отношений действует автоматическое включение и фиксированное членство. Другими словами, база данных, чтобы запомнить некорневую строку, должна получить ее родительскую запись. Соответственно при удалении «владельца» иерархии исчезают и все дочерние строки.
Примеры атрибутов
Приведем пример, в котором минимальная единица структуры БД получила атрибуты: Name, Code, Subcategory, StandardCost, ListPrice и FilePhoto. Атрибуты выступают описанием полей БД. При этом любой отдельный элемент представляется отдельной записью значений атрибута.
В примере объект БД Product включает:
- атрибуты в свободном виде Name, Code, StandardCost и ListPrice;
- атрибут с учетом подмножества Subcategory;
- метаданные описания файла FilePhoto.
Скачать файл
Объект Subcategory применяется как минимальная единица записи на основании подмножества сущности Product. В свою очередь объект Category применяется как минимальная единица записи на основании подмножества сущности Subcategory. Аналогично с объектом Product, сущности Category и Subcategory безусловно включают атрибуты Name и Code.
Виды атрибутов
Строковые поля
Чтобы рассмотреть атрибуты базы данных составим табличный документ
| StrDesc | |
| Id INTEGER | Первичный ключ |
| TypeId INTEGER REFERENCES ObjType(Id) | Указатель типа объекта базы данных |
| Code CHAR(10) | Краткое название параметра |
| ItemName CHAR(30) | Полное название параметра (используется только в отношении интерфейса) |
При БД все объекты получают свой набор свойств, присущих определенному типу. Так, объект типа «EMPLOYEE» включает следующие свойства строк:
«FAMILY» — фамилия
«FIRSTNAME» — имя
«LASTNAME» — отчество
«ADDRESS» — адрес
«EMAIL» — e-mail
Строку Objects.ItemName для работников заполняет сервер программы в виде комбинация атрибутов FAMILY + FIRSTNAME + LASTNAME.
Хранение атрибутов осуществляется в табличной форме:
| Strings | |
| Id INTEGER | Первичный ключ |
| TypeId INTEGER REFERENCES StrDesc(Id) | Ссылка на тип параметра |
| ObjectId INTEGER REFERENCES Objects(Id) | Ссылка на объект |
| Value VARCHAR(255) | Значение параметра |
Для вывода списка работников, у которых есть электронная почта может вводиться запрос:
SELECT O.ItemName, S.Value
FROM Objects O
INNER JOIN ObjType OT ON O.TypeId = OT.Id
INNER JOIN Strings S ON O.Id = S.ObjectId
INNER JOIN StrDesc SD ON S.TypeId = SD.Id
WHERE OT.Code = ‘EMPLOYEE’
AND SD.TypeId = OT.Id
AND SD.Code = ‘EMAIL’
Топ-30 самых востребованных и высокооплачиваемых профессий 2023
Поможет разобраться в актуальной ситуации на рынке труда
Подборка 50+ ресурсов об IT-сфере
Только лучшие телеграм-каналы, каналы Youtube, подкасты, форумы и многое другое для того, чтобы узнавать новое про IT
ТОП 50+ сервисов и приложений от Geekbrains
Безопасные и надежные программы для работы в наши дни
Уже скачали 20766
Чтобы вывести список работников с данными e-mail (если такие присутствуют), необходимо изменить запрос:
SELECT O.ItemName, S.Value
FROM Objects O
INNER JOIN ObjType OT ON O.TypeId = OT.Id
LEFT JOIN Strings S ON O.Id = S.ObjectId
LEFT JOIN StrDesc SD ON S.TypeId = SD.Id
WHERE OT.Code = ‘EMPLOYEE’
AND SD.TypeId = OT.Id
AND SD.Code = ‘EMAIL’
При создании для разных типов объектов атрибутов с идентичными данными в поле Code можно получить довольно любопытный результат. Допустим, объекты EMPLOYEE (работник) и FIRM (компания) имеют одинаковые атрибуты строк: ‘EMAIL’. В этом случае по одному запросу можно вывести список адресов по всем доступным в базе данных почтовым реквизитам.
SELECT O.ItemName, OT.ItemName, S.Value
FROM Objects O
INNER JOIN ObjType OT ON O.TypeId = OT.Id
INNER JOIN Strings S ON O.Id = S.ObjectId
INNER JOIN StrDesc SD ON S.TypeId = SD.Id
WHERE SD.Code = ‘EMAIL’
ORDER BY OT.ItemName, O.ItemName
В случае дальнейшего добавления нового объект с таким же атрибутом, он будет сразу учтен и выведен в списке без изменений в базе данных. Намного сложнее будет получить подобный эффект в базе данных с обычной структурой.
Числовые атрибуты
Чтобы упростить ситуацию предположим, что хранение всех числовых атрибутов организовано с использованием одного типа данных (к примеру, DECIMAL(20,4). Такой подход удобен при использовании серверов типа MONE.
Если же принцип организации БД предполагает выделение определенного типа данных, то здесь возможно решение выделить для этого отдельную группу табличных форм. Остальные особенности хранения данных выбранного типа не будут отличаться от работы с значениями строк. Описания атрибутов будут представлены в табличной форме:
| PropDesc | |
| Id INTEGER | Первичный ключ |
| TypeId INTEGER REFERENCES ObjType(Id) | Ссылка на класс объекта |
| Code CHAR(10) | Краткое наименование параметра |
| ItemName CHAR(30) | Полное название параметра (используется только в отношении интерфейса) |

Читайте также
А сами атрибуты — в таблице:
| Properties | |
| Id INTEGER | Первичный ключ |
| TypeId INTEGER REFERENCES PropDesc(Id) | Ссылка на тип параметра |
| ObjectId INTEGER REFERENCES Objects(Id) | Ссылка на объект |
| Value DECIMAL(20,4) | Значение параметра. Тип данных MONEY удобно хранить на поддерживающих его серверах (аналоги Currency в Delphi). |
Можно дополнить табличную форму PropDesc полями, которые задают наименьшее и наибольшее значение атрибута, свойство по умолчанию и др. Проверить правильность указанных значений может проводиться в триггере на модификацию табличной формы Properties.
Хронологические атрибуты
В определенных временных отрезках состояние объектов БД может меняться. К примеру, работник может приниматься на испытательный срок, увольняться, переводиться и т.д. Описание состояний отображается в табличной форме:
| Status | |
| Id INTEGER | Первичный ключ |
| TypeId INTEGER REFERENCES ObjType(Id) | Ссылка на тип объекта |
| Code CHAR(10) | Краткое название состояния |
| ItemName CHAR(30) | Полное название параметра (используется только в отношении интерфейса) |
Например, для человека допустимые состояния могут включать:
- «WASBORN» — Дата рождения
- «EMPLOYEED» — Принят на должность
- «DISMISS» — Уволен
Только до 15.05
Скачай подборку тестов, чтобы определить свои самые конкурентные скиллы
Список документов:



Чтобы получить файл, укажите e-mail:
Подтвердите, что вы не робот,
указав номер телефона:
Уже скачали 7503
В этом случае можно обеспечить принцип, при котором каждое состояние объекта будет появляться неоднократно. К примеру, работник принят на должность, уволен и снова принят.
Хронология изменений сохраняется в табличной форме:
| History | |
| Id INTEGER | Первичный ключ |
| StatusId INTEGER REFERENCES Status(Id) | Ссылка на тип состояния |
| ObjectId INTEGER REFERENCES Objects(Id) | Ссылка на объект |
| ItemDate DATETIME | Дата изменения состояния |
В процессе изменения состояний в таблице History появляется запись, отсылающая к конкретному состоянию и времени его появления. Так при приеме на работу в истории появляется запись с датой и ссылкой на состояние EMPLOYEED. После увольнения появляется ссылка на состояние DISMISS, а при повторном приеме на должность — EMPLOYEED. Для получения перечня работников, которые числятся на определенную дату может использоваться следующий вид запросов:
SELECT O.ItemName, H.ItemDate AS Employeed
FROM Objects O
INNER JOIN ObjType OT ON O.TypeId = OT.Id
INNER JOIN History H ON H.ObjectId = O.Id
INNER JOIN Status S ON H.StatusId = S.Id
WHERE OT.Code = ‘EMPLOYEE’
AND S.Code = ‘EMPLOYEED’
AND H.ItemDate = (SELECT MAX(H1.ItemDate)
FROM History H1
INNER JOIN Status S1 ON H1.StatusId = S1.Id
WHERE H1.ObjectId = O.Id
AND H.ItemDate <= :DateParam
AND S1.Code IN (‘EMPLOYEED’, ‘DISMISS’))
Атрибуты с ограниченным числом значений
Завершающим видом выступают перечислимые типы атрибутов данных (могут иметь лишь одно значение из предварительно заданного набора). Хранение таких значений осуществляется не в двух табличных формах как в случае с другими атрибутами, а сразу в трех. В первой таблице задаются перечисления, которые допустимы для объекта выбранного типа:
| EnumDesc | |
| Id INTEGER | Первичный ключ |
| TypeId INTEGER REFERENCES ObjType(Id) | Ссылка на тип объекта |
| Code CHAR(10) | Краткое наименование состояния |
| ItemName CHAR(30) | Полное название параметра (используется только в отношении интерфейса) |
Вторая — определяет возможные значения для перечислимого типа:
| EnumValues | |
| Id INTEGER | Первичный ключ |
| DescId INTEGER REFERENCES EnumDesc(Id) | Ссылка на тип перечисления |
| Code CHAR(10) | Краткое название значения |
| ItemName CHAR(30) | Полное название параметра (используется только в отношении интерфейса) |
Третья — непосредственно хранит значения, связанные с объектом:
| Enums | |
| Id INTEGER | Первичный ключ |
| ValueId INTEGER REFERENCES EnumValues(Id) | Ссылка на значение |
| ObjectId INTEGER REFERENCES Objects(Id) | Ссылка на объект |
Иллюстративным примером применения данных такого типа выступает форма собственности компании. Чтобы выяснить этот вопрос, необходимо включить строку в EnumDesc:
| TypeId | Code | ItemName |
| Ссылка на ObjType для типа «FIRM» | OWNERFORM | Форма собственности |
И в EnumValues:
| DescId | Code | ItemName |
| Ссылка на EnumDesc для | ИЧП | Индивидуальное частное предприятие |
| типа «OWNERFORM» | ООО | Общество с ограниченной ответственностью |
| … |
Как мы видим, теперь можно описать любой набор свойств объекта, информация о котором представлена в базе данных. Кроме того, данные о произвольной сущности можно отобразить на объекты, которые хранятся в единообразном виде. Но в таком виде БД еще не может использоваться для решения более сложных задач. Это связано с тем, что в определенных областях объекты данных имеют множественные связи между собой. Рассматриваемая БД еще не в состоянии отобразить такие зависимости.
Методы исполнения атрибутов
Значения определенных свойств конкретных объектов определяют методы, которые могут использоваться для создания конкретных сущностей. Отдельно рассматривать сами методы не имеет смысла, так как они довольно очевидны в отличие от способов исполнения образующих вычислительную среду (с их помощью изменение состояния значений происходит в результате внешнего воздействия в соответствии с установленными в форме модели данных правилами).
Вызов способа (метода) исполнения внешним воздействием на состояние данных. Различают 4 таких метода: Create, Set, Get и Update.
Первый метод из этого списка соответствует мета-классу и применяется для любого объекта класса. Его параметром выступает описатель IDC целевого класса. С помощью способа Create объекты создаются, как сопутствующие атрибутам указанного класса элементы. При этом класс регистрируется в табличной форме аллокации DAT за вслед за свободным описателем IDO.

Читайте также
Методы Set, Get и Update относятся мета-атрибутам. Они используются для работы со значениями объектов данных. Метод атрибута Set присваивает значения, Get обеспечивает его выборку, а Update инициирует переформирование производного значения, которое хранится в БД.
Идентификация целевого значения в методах атрибута обеспечивается описателем IDO. При этом, сам целевой объект доступен только для атрибута класса (путь к этому атрибуту указан в описателях IDC+IDA модели данных).
Таким образом, все операции с значением происходят от имени атрибута класса. Механизм выполнения методов атрибута отличается тем, что в ходе такого действия метод перебирает сокеты в кортеже атрибута и осуществляет вызов подобного метода для целевого атрибута, который адресуется соединителем (если в сокете стоит флажок, соответствующий методу).
Поскольку при выполнении методов: Create, Set или Update меняется состояние значений, то вызов данных может происходить только в рамках сессии транзакции. При вызове любого из указанных методов происходит атомарное внешнее воздействие на БД. Такой процесс несложно формализовать в вид транзакции и сохранить в журнале.
Обработанная таким образом база данных способна сохранять описания любых объектов с применением разных атрибутов. Таким образом можно динамически выявлять и устанавливать связи между сущностями. Такой механизм будет вполне достаточным для решения многих задач с уникальными объектами.
Структура реляционных баз данных
Мы кратко уже знакомились с реляционными базами данных в предыдущей статье. Но нам ведь недостаточно
поверхностного понимания? Давайте заплывём за буйки и погрузимся глубже в структуру и терминологию
реляционных баз данных.
Структура таблицы
В реляционных базах данных информация хранится в связанных друг с другом таблицах.
Сами же таблицы состоят из:
- строк, которые называют «записи»
- столбцов, которые называют «полями» или же «атрибутами»
В каждой таблице каждый столбец имеет заранее определённый тип данных. Например, такими типами могу выступать:
- VARCHAR (строковый тип данных)
- INTEGER (числовой тип данных)
- DATETIME (тип данных для даты и времени) и прочие
И каждая строка таблицы должна иметь соответствующий тип для каждого столбца. СУБД не допустит попытку добавления
в поле с типом DATETIME произвольной строки.
Для того, чтобы узнать типы данных атрибутов можно выполнить SQL команду DESCRIBE и указать название таблицы:
Или же посмотреть на ERD-диаграмму схемы базы данных:
Первичный ключ
Любая СУБД имеет встроенную систему целостности и непротиворечивости данных.
Эта система работает на наборе правил, определённых в схеме базы данных. Первичный ключ и внешние ключи как раз
являются одними из таких правил.
Чтобы избегать неоднозначности при поиске в таблицах присутствуют первичный ключ или, как его ещё называют,
«ключевое поле».
Ключевое поле (первичный ключ) – это поле (или набор полей), значение которого однозначно определяет запись в таблице.
Если обратиться к нашей вышеупомянутой таблице FamilyMembers, то в ней ключевым полем является member_id.
С помощью данного правила СУБД не позволит нам создать новую запись, где поле member_id будет неуникальным.
Внешний ключ
Внешний ключ – это поле (или набор полей) в одной таблице, которое ссылается на первичный ключ в другой таблице.
Таблица с внешним ключом называется дочерней таблицей, а таблица с первичным ключом называется ссылочной или родительской таблицей.
Правило внешнего ключа гарантирует, что при создании записей в дочерней таблице, значение поля, являющегося внешним ключом, есть
в родительской таблице.
Если наличие первичного ключа – это обязательное требование для каждой таблицы в реляционной базе данных,
то правило внешнего ключа – нет.
Если внешний ключ не определён, то всё также будет работать, но СУБД
не будет проверять, что, например, при создании записи в таблице Purchase в полях buyer_id и good_id лежат
значения, которые определены в соответствующих таблицах в поле id.
Какое из утверждений неверное относительно ключей в реляционных СУБД ?
Здравствуйте, уважаемые посетители сайта ZametkiNaPolyah.ru. Продолжаем изучать базы данных и наше знакомство с библиотекой SQLite3. В данной публикации мы разберем, что такое ключи и ключевые атрибуты в реляционных базах данных, для чего нужны ключевые атрибуты и какими могут быть ключи в базах данных.
Ключи и ключевые атрибуты в базах данных
Рассмотрим одну из самых простых, но очень важных тем в теории баз данных – ключи и ключевые атрибуты.
Давайте посмотрим, какие ключи и ключевые атрибуты бывают в таблицах баз данных:
- Ключи или ключевой атрибут — атрибут (читай столбец) или набор атрибутов, который однозначно идентифицирует сущность/объект/таблицу в базе данных.
- Первичный ключ — ключ, который используется для идентификации объекта.
- Ключ-кандидат (альтернативный ключ) — ключ, по каким-либо причинам неиспользуемый как первичный.
- Составной ключ — ключ, который использует несколько атрибутов.
- Суррогатный ключ — ключ, значение которого генерируется СУБД.
Ключевые атрибуты или ключи по своему виду делятся на: простые и составные, естественные и суррогатные, первичные ключи и ключи кандидаты.
Рассмотрим различие между естественными и суррогатными ключами, естественно, на примере. Для этого обратимся к таблице с городами из базы данных World.
Таблица с суррогатным ключом
В этой таблице ключом является столбец ID, данный столбец автоматически генерируется СУБД при добавлении новой записи в таблицу, следовательно, атрибут ID–суррогатный ключ. В данной таблице мы видим столбец с именем CountryCode, который может выступать в роли ключа для таблицы Country, такой ключ будет естественным.
Как нам определить, что столбец может быть ключом? Есть два очень простых признака того, что столбец является ключом или ключевым атрибутом: ключ уникален и ключ вечен. Но хочу отметить, что ключ – абстрактное понятие. Например, представим, что у нас есть таблица, в которой хранится информация о учениках класса, в принципе, ничего страшного не будет, если в такой таблице столбец ФИО будет выступать в роли ключа. Но, когда наша база данных работает в масштабах города, области, региона или страны, то столбец ФИО никак не может выступать в роли ключа, даже номер паспорта – это не ключ, так как со временем мы меняем паспорт, а у несовершеннолетних его нет.
Поясню принцип составного ключа. Представим, что гражданин Петров был задержан сотрудниками полиции в нетрезвом виде за нарушение правопорядка. По факту задержания составляется рапорт (гражданин Петров не имеет при себе паспорта). Сотрудник полиции в рапорте укажет ФИО задержанного, но ФИО в масштабах города никак не идентифицируют Петрова Петра Петровича, поэтому сотрудник записывает дату рождения, если город большой, то Петр Петрович Петров, родившийся 14 февраля 1987 года в нем не один, поэтому записывается адрес фактического проживание и адрес прописки, для достоверности указывается время задержания. Сотрудник полиции составил набор характеристик, которые однозначно идентифицируют гражданина Петрова. Другими словами, все эти характеристики – составной ключ.
Итак, мы рассмотрели ключи и ключевые атрибуты в базах данных. Надеюсь, что теперь вы разобрались с понятием ключ или ключевой атрибут в реляционной базе данных.
Возможно, эти записи вам покажутся интересными
Общие реквизиты 1С — это общие объекты конфигурации 1С, которые используются для двух целей:
- в механизме разделения данных для идентификации независимых областей данных, создаваемых внутри информационной базы (свойство общего реквизита «Разделение данных»);
- для автоматического добавления нескольким или всем объектам конфигурации одинакового реквизита с одним и тем же именем и одинаковым типом (например, если во всех документах требуется иметь реквизиты «Автор» и «Редактор», достаточно создать два общих реквизита (Автор, Редактор) и указать, в каких документах они будут использоваться, а не создавать их в каждом документе).
Разделение данных в 1С
Механизм разделения данных в 1С позволяет хранить данные нескольких независимых организаций в одной информационной базе благодаря тому, что общие реквизиты объектов конфигурации можно использовать:
- как одинаковый реквизит, который есть у всех объектов;
- как идентификатор того, что данные относятся к какой-то одной из нескольких независимых областей.
Например:
- Если в конфигурации существует общий реквизит «Организация», то это значит (упрощённо), что у каждого справочника, документа или другого объекта конфигурации также будет существовать реквизит «Организация». При этом любой из пользователей информационной базы имеет доступ ко всем данным, которые хранятся в этой базе, независимо от того, какая организация указана, например, в том или ином документе.
- Если общий реквизит «Организация» будет являться разделителем, то (упрощённо) в информационной базе будет создано несколько независимых областей данных, в каждой из которых будут храниться данные только для одной конкретной организации. Теперь, заходя в программу, пользователь будет получать доступ не ко всей информации, которая есть в информационной базе, а только к данным «своей» области, в данном случае к документам, справочникам и др. своей организации.
Таким образом, механизм разделения данных позволяет настроить отображение элементов, которые может видеть пользователь. Например, можно разграничить все объекты (документы, справочники и т.д.), где установлена определенная организация.
Возможен вариант использования этого механизма, когда в информационной базе существуют:
- несколько независимых областей данных и одновременно с этим
- существуют данные, которые доступны всем пользователям программы (например, справочник банков, который одинаков для всех организаций).
Возможности механизма разделения данных:
- позволяет использовать не один, а несколько разделителей;
- существуют разные режимы использования разделяемых данных: они отличаются тем, как обрабатывается ситуация, когда значение разделителя не указано;
- использование общего реквизита в качестве разделителя может управляться в процессе работы программы из встроенного языка без изменения конфигурации: это называется условным разделением.
Подробнее о механизме разделения с рисунками (для понимания)
Хранение однотипных данных в 1С
Если в конфигурации существует общий реквизит «Автор», то это значит (упрощённо), что у каждого справочника, документа или другого объекта конфигурации также будет существовать реквизит «Автор». При этом нет необходимости создавать такой реквизит (Автор) в каждом документе: достаточно создать общий реквизит «Автор» и указать, в каких документах он будет использоваться (Использование — «Состав»).
Автоиспользование — настройка определяет, будет ли использоваться общий реквизит для тех объектов, у которых в составе указан режим использования «Автоматический».
После добавления общего реквизита его можно использовать и в запросах и выводить на форму объектов — внешне он ничем не отличается от обычного реквизита.
Ограничение общих реквизитов:
- невозможность использования их в журнале документов.

















