Какую структуру базы данных использовать для хранения информации GEDCOM? - PullRequest
2 голосов
/ 17 сентября 2010

Какую структуру базы данных использовать для хранения информации GEDCOM?

Ответы [ 2 ]

1 голос
/ 02 февраля 2013

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

Если вы используетеJava, например, вы можете использовать gedcom4j для загрузки / записи данных в граф объектов Java, когда вам нужна возможность импорта / экспорта.Эти данные хранятся внутри графического объекта Java внутри, который затем может быть сохранен с помощью JPA или Hibernate или JDO в базе данных по вашему выбору ... что будет проще, если схема базы данных будет ближе к графу объекта, но вы можете настроитьэто в другую структуру, если вам нужна ... просто делает отображение немного более сложным.

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

0 голосов
/ 05 декабря 2010

Хранение отдельных строк GEDCOM в базе данных кажется бессмысленным, вы не получите никаких преимуществ от использования базы данных.Марис прав, однако, что 255 будет достаточно, поскольку 255 является жестким ограничением длины линии в соответствии со спецификацией GEDCOM.(страница 11 проекта спецификации 5.5.1).

Правильный метод - использовать существующий синтаксический анализатор GEDCOM (например, gedcom.net) или создать свой собственный (что не так просто, как во многих примерах).оформить), который затем вставит в базу данных.Взгляните на http://sqlitetoolsforrootsmagic4.wikispaces.com/, который содержит информацию о схеме, используемой RootsMagic.

...