Ликбез по СУБД
Обсуждаем систему управления базами данных в генеалогии
| silv ivan Новичок
Сообщений: 50 На сайте с 2003 г. Рейтинг: 1 | Вверх #
19 января 2004 18:55 В моем словоупотреблении "свойство" = "предикат", то есть - ЛЮБОЕ СКАЗУЕМОЕ. А если свойство меняется, то его значения нужно хранить вместе с указанием ПЕРИОДА, в который данное значение свойства имело место. Только так и никак иначе. --- С уважением, Иван Сильв. | | |
LudmillaДолгожитель форума скончалась 16 марта 2009 Светлая ей память!  Москва Сообщений: 7305 На сайте с 2005 г. Рейтинг: 1672 | Вверх #
19 января 2004 19:24 Ну нет, все-таки, мне кажется, информацию, касающуюся, например рождения, или смерти, или брака легче передать строчкой, чем таблицами, содержащими по три поля... Просто вот завести отдельные таблицы на все типичные события, и перечень Роджера можно преобразовать в систему таблиц. Вы не полумайте. что я придираюсь, мне просто так кажется  . Вот завтра днем возьму все, что Роджер написал и попробую написать, к чему это сводится... Если он сам до этого этого не сделает | | |
| silv ivan Новичок
Сообщений: 50 На сайте с 2003 г. Рейтинг: 1 | Вверх #
19 января 2004 19:48 Ага ... только не забудьте к каждому полю свойства, которое - по Вашему мнению - "у персоны не остается постоянным", добавить еще ДВА поля даты: [начиная c даты] и [оканчивая датой]! ;-) ___________________ На самом деле, две этих НОТАЦИИ: 1. один объект со всеми своими свойствами (будь их хоть сто, хоть тысяча!) - в одной строке таблицы, и 2. строка таблицы - описывает ОДНО значение ОДНОГО свойства у ОДНОГО объекта, - между ними существует ВЗАИМНООДНОЗНАЧНОЕ соответствие, то есть - можно переходить (например, - трансформировать базу данных) от одной нотации к другой и обратно ... С другой стороны, каждая нотация имеет и свои преимущества, и свои недостатки ... (Сообщение отредактировал silv ivan 19 янв. 2004 19:54) --- С уважением, Иван Сильв. | | |
| liss Новичок
Сообщений: 7 На сайте с 2004 г. Рейтинг: 2 | Вверх #
20 января 2004 11:11 Очень,очень верное замечание!!! от Tsyplakov "Да и потом, информация, размещаемая в сети и просто для работы на компьютере, это очень разные даже разные вещи. " Одно дело работать с базой (связанными базами) на локальном компьютере или даже в локальной сети. А совсем другое дело работать через Интернет. Я думаю, что ни у кого из вас, ребята, нет харошего WEB-инструмента для работы с нормализованной базой данных, т.е. для ввода в такую базу и извлечения информации через обычный WEB-браузер!? --- Виктор Е. | | |
| Tsyplakov Почетный участник
Самара Сообщений: 215 На сайте с 2003 г. Рейтинг: 31 | Вверх #
20 января 2004 11:40 База про футбол, приведенная мной для примера - это чисто информационный сайт. Она обновляется не так часто. И простым выкладыванием готовой базы на сервер. А пополняется она на локальном компьютере из полученных кусков материала, подготовленных на разных других компьютерах. --- Александр Цыплаков Ищу Цыплаковых (Оренбургские казаки, Бузулукский район, Оренбургская губерния), Дьячковых (Тамбовская губерния, с. Сосновка), Рузавиных (Самарская губерния), Волковы (Татарстан - Верх и Ниж. Альмурзино, Юхмачи). | | |
LudmillaДолгожитель форума скончалась 16 марта 2009 Светлая ей память!  Москва Сообщений: 7305 На сайте с 2005 г. Рейтинг: 1672 | Вверх #
20 января 2004 11:49 Ну об этом я в общем и говорю  То, что мы в теме "Структура базы" обсуждаем - это база для работы на домашнем (или рабочем) компьютере для генеалога, который хочет анализировать свою информацию. То, что мне нужно для сайта - это крайне усеченная версия с намного меньшими возможностями анализа. Я еще и с таким удовольствием это обсуждаю потому, что при этом лучше понимаю, что мне нужно для сайта, что "усекать" и как организовывать. То есть, выдумывая базу для Роджера, одновременно уточняю ее и для себя  Как в книге "Что делать", разумный эгоизм | | |
| Tsyplakov Почетный участник
Самара Сообщений: 215 На сайте с 2003 г. Рейтинг: 31 | Вверх #
20 января 2004 13:10 Нужно сделать полное словестное описание того, что нужно хранить в базе, какие производные из этой информации получать, в какой форме. Помоему здесь получится описание исторического процесса вообще. На основе документов, которые этот процесс описывают. --- Александр Цыплаков Ищу Цыплаковых (Оренбургские казаки, Бузулукский район, Оренбургская губерния), Дьячковых (Тамбовская губерния, с. Сосновка), Рузавиных (Самарская губерния), Волковы (Татарстан - Верх и Ниж. Альмурзино, Юхмачи). | | |
| Tsyplakov Почетный участник
Самара Сообщений: 215 На сайте с 2003 г. Рейтинг: 31 | Вверх #
20 января 2004 13:35 Еще скажу, что я всегда был сторонником больших и смелых проектов. Так, что идея Людмилы мне понятна и очень даже по душе. --- Александр Цыплаков Ищу Цыплаковых (Оренбургские казаки, Бузулукский район, Оренбургская губерния), Дьячковых (Тамбовская губерния, с. Сосновка), Рузавиных (Самарская губерния), Волковы (Татарстан - Верх и Ниж. Альмурзино, Юхмачи). | | |
| silv ivan Новичок
Сообщений: 50 На сайте с 2003 г. Рейтинг: 1 | Вверх #
20 января 2004 15:37 Цитата: silv ivan написал 19 янв. 2004 19:48 к каждому полю свойства, которое ... "у персоны не остается постоянным", добавить еще ДВА поля даты: [начиная c даты] и [оканчивая датой]! ;-)
Прошу принять мои извинения, - был неправ: "непостоянные свойства" ПРИНЦИПИАЛЬНО невозможно отображать в таблицах, построенных в "нотации №1". --- С уважением, Иван Сильв. | | |
LudmillaДолгожитель форума скончалась 16 марта 2009 Светлая ей память!  Москва Сообщений: 7305 На сайте с 2005 г. Рейтинг: 1672 | Вверх #
20 января 2004 16:36 Вот! Мне кажется, что не надо разносить ФИО по разным клеткам, тем более, что когда-то ни отчества, ни фамилии не было. То есть, мне кажется именование персоны надо вносить в одну клетку, целиком. И совершенно все равно, что там писать – Иван Петров Яковлев, именуемый также Карачун, или Петр Ильич Чайковский – и то, и другое – именованеи персоны. Но по этому поводу надо сделать классификатор фамилий. То есть первая таблица – классификатор фамилий, две клетки: ID фамилии, Фамилия Вторая таблица – классификатор персон. Три клетки: ID персоны, ID фамилии, именование персоны. Поскольку в базе будут встречаться населенные пункты, обязательно нужен классификатор населенных пунктов, то есть ID населенного пункта тоже будет, но я еще не придумала состава таблиц, потому что они меняли наименование и административно-территориальное деление. Пока упростим задачу, не принимаем это в расчет (не при определении структуры базы, а просто на данном этапе рассуждений) и делаем простую таблицу из двух клеток: ID населенного пункта, наименование населенного пункта. Напоминаю, что одна из задач, которую хочет решать Роджер такая: «К примеру, поставлена задача найти всех персон, происходящих из Нижегородской губернии, которые в 1763 г. (3-я ревизия) числились при Невьянском заводе крепостными, были заняты в молотовом производстве, а именно имели должность мастера, у которых отцы также были мастерами и принадлежали к первому поколению переселенцев, а жены происходили из того же завода. При этом желательно видеть в отчете все прочие поля - возраст, напрмер и т.п.» Ну то есть в конечном итоге без губерний не обойтись, но пока игнорируем. Ну и, поскольку он хочет вносить источники, по ходу дела создается классификатор источников, две клетки: ID источника, наименование источника. Ну и поскольку нужны церковные приходы, еще создается классификатор церковных приходов, дву клетки : ID прихода, наименование. Тут бы тоже надо разобраться со всякими епархиями, но об этом потом. То есть, пока занимаемся набором таблиц для персон. Таблицы на основе событий. Поля буду звездочкой разделять. А то запятой плохо видно. Таблица «Рождение» ID персоны * дата * ID места рождения * ID отца * ID матери * ID источника. Таблица «Крещение» ID персоны * дата * ID церковного прихода * ID священника (который является такой же персоной, как и все другие) * имя крестимого (крестить могут по одному, а звать по другому) * ID одного воспреемника * ID второго воспреемника * ID источника. Таблица «Сословие» ID персоны * социальный статус * год * ID источника Таблица «Место жительства» ID персоны * ID места жительства * год * ID источника Таблица «Место работы и должность» ID персоны * Место работы и должность * год * ID источника Таблица «Вероисповедание» ID персоны * Вероисповедание * год * ID источника. Таблица «Браки» ID жениха * ID невесты * Дата * ID прихода * ID священника * ID поручителей (несколько клеток) * ID источника. Таблицу про рождение детей делать не надо, потому что при вводе информации о рождении ребенка его связь с родителями задается. Таблица «Смерти» ID персоны * дата * ID места смерти * причина смерти * исповедь и причастие (да или нет) * ID священнослужителя * ID источника Таблица «Похороны» ID персоны * дата * ID места погребения * ID источника. Таблица «Размер капитала» (для купцов) ID персона * дата * размер капитала * ID источника Таблица «Выбыл» ID персоны * дата * ID населенного пункта * причина * ID источника Таблица «Прибыл» ID персоны * дата * ID населенного пункта * причина * ID источника Вводить таблицу «Возраст» не имеет смысла, возраст будет высчитываться из даты рождения (а дата рождения из возраста) при введении или выведении информации, только надо учесть, что дата может быть точной, а может быть и не точной, надо ввести обозначение для приблизительной даты или диапазона дат – около, между, до, после. Ну, я уже много написала, теперь вы что-нибудь скажите!!! | | |
|