Объектно-ориентированные базы данных - PullRequest
2 голосов
/ 03 августа 2010

Это первый раз, когда я работаю с объектно-ориентированными базами данных. Я был связан с СУБД в течение последних нескольких лет.Но сейчас ... приходя в этот мир объектно-ориентированных баз данных, я немного обеспокоен последствиями создания или проектирования БД.Меня беспокоит заполнение или миграция этих объектно-ориентированных баз данных из базы данных RDMS.Это будет одной из моих задач.

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

Любые входы ??

Ответы [ 3 ]

1 голос
/ 04 августа 2010

Так это действительно база данных SQL?Я не думаю, что этот вопрос имеет какое-либо отношение к тому, что большинство людей будет понимать как «объектно-ориентированная» база данных.

Похоже, ваша база данных непригодна для использования в той форме, в которой вы ее разместили.Вы не можете вставлять строки, если не удалите или не отключите одно из ограничений внешнего ключа - по крайней мере, временно.Один из способов сделать это - использовать «защищаемое» ограничение.Тем не менее, похоже, что вы используете Microsoft SQL Server, который не поддерживает дефектные ограничения.

1 голос
/ 16 апреля 2011

я уже ответил здесь раньше, надеюсь, это поможет

Относительная дБ

  • SQL и стандарты
  • легко моделируется
  • можно использовать только стандартные и типы поставщиков
  • ссылочная целостность (математически надежная теория реляционных множеств )
  • много инструментов и реализации баз данных
  • данные отдельно от программы
  • управление хранилищем и поддержка инфраструктуры высокого уровня
  • управление транзакциями и параллелизмом, выполненное в
  • Реляционная модель основана на значениях, т.е. строки идентифицируются первичными ключами

Против

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

Объект БД

  • Высокая производительность
  • Быстрее, не требуется никаких соединений
  • Механизм управления версиями
  • Навигационный интерфейс для операций (например, обход графика)
  • Object Query Language извлекает объекты декларативно
  • сложные типы данных
  • идентификатор объекта, т.е. equals (), в котором идентичность объекта не зависит от значения и обновлений
  • облегчает совместное использование объекта
  • классы и иерархии (наследование и инкапсуляция)
  • поддержка отношений
  • интегрировано с постоянным языком, таким как ODL
  • поддержка атомарности
  • поддержка вложенных отношений
  • семантическое моделирование

Против

  • Нет математического обоснования как RDB (см. Кодд)
  • минусы ориентации объекта
  • постоянство трудно для сложных структур, некоторые данные должны быть переходными

Объектно-реляционные базы данных (Возможно, вы видели UDT!)

  • поддержка сложных типов данных, таких как сбор, мультимножества и т. Д.
  • объектно-ориентированное моделирование данных
  • расширенный SQL и расширенные типы
  • поддержка наследования UDT
  • мощный язык запросов

Для разных приложений могут потребоваться разные подходы (OO, Relational DB или OODB)

Ссылки

Преимущество использования реляционных баз данных для крупных корпораций

Реляционная база данных Реляционная база данных

Манифест ООДМС

ODMG * ​​1128 *

Преимущества реляционной базы данных

Манифест объектно-ориентированной базы данных

Объектно-ориентированные базы данных

Объектные реляционные базы данных в СУБД

Критерии полноты для объектно-реляционных систем баз данных

Сравнения

http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems

http://en.wikipedia.org/wiki/Comparison_of_object_database_management_systems

http://en.wikipedia.org/wiki/Comparison_of_object-relational_database_management_systems

0 голосов
/ 04 августа 2010

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

 CREATE TABLE [dbo].[A](
[application] [varchar](50) NULL,
[category] [varchar](50) NULL,
[corporateCode] [varchar](50) NULL,
[critical] [bit] NULL,
[initialCondition] [varchar](50) NULL,
[initialLossOfLife] [decimal](3, 2) NULL,
[installationDate] [date] NULL,
[lotNumber] [varchar](50) NULL,
    [BID] [int] NOT NULL,

  CONSTRAINT [PK_A] PRIMARY KEY CLUSTERED 
 (
[AID] ASC
  )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY =              OFF,           ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
 ) ON [PRIMARY]

GO

SET ANSI_PADDING OFF GO

  ALTER TABLE [dbo].[A]  WITH CHECK ADD  CONSTRAINT [FK_BID] FOREIGN KEY([B])

ССЫЛКИ [dbo]. [B] ([BID]) GO

     CREATE TABLE [dbo].[B](
[BID] [int] NOT NULL,
    CONSTRAINT [PK_B] PRIMARY KEY CLUSTERED 
   (
[BID] ASC
   )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF,          ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
  ) ON [PRIMARY]

 GO

  ALTER TABLE [dbo].[B]  WITH CHECK ADD  CONSTRAINT [FK_B_A] FOREIGN KEY([BID])
  REFERENCES [dbo].[A] ([AID])
  GO

  ALTER TABLE [dbo].[B] CHECK CONSTRAINT [FK_B_A]
  GO

Каким образом возможна вставка в дизайн такого типа даже из слоя Presentation?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...