<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3467365624233960471</id><updated>2024-09-11T09:29:34.009-07:00</updated><title type='text'>Блог о базах данных</title><subtitle type='html'>Это блог о базах данных sql.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogoshishi.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3467365624233960471/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://blogoshishi.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>ANDREy</name><uri>http://www.blogger.com/profile/06153228097074422790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3467365624233960471.post-8308876358095970275</id><published>2012-04-23T12:53:00.002-07:00</published><updated>2012-04-23T12:53:20.800-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;



&lt;br /&gt;
&lt;div class=&quot;Style64&quot; style=&quot;margin-top: 8.05pt; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle943&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Ссылки и идентификационные
номера объектов&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style32&quot; style=&quot;line-height: 10.3pt; margin-top: 3.7pt; mso-line-height-rule: exactly; mso-pagination: widow-orphan; text-indent: 14.15pt;&quot;&gt;
&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;В &quot;чистой&quot;
объектно-ориентированной модели каждый объект снабжен уникаль­ным
идентификационным номером&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; (OID),&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; который скрыт от пользователя
и не может быть просмотрен или запрошен. Объектно-реляционная модель позволяет
использо­вать ссылки в определениях типов, и поэтому в некоторых
обстоятельствах пользова­телю разрешается видеть значения ссылок и даже
манипулировать ими. Вы можете расценить эту возможность либо как заведомо
вредоносную, либо, наоборот, как не­что совершенно выдающееся (в зависимости от
конкретной точки зрения), но на практике все это мало что значит.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style64&quot; style=&quot;margin-top: 8.05pt; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle943&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Обратная совместимость&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style32&quot; style=&quot;line-height: 10.3pt; margin-top: 3.85pt; mso-line-height-rule: exactly; mso-pagination: widow-orphan; text-indent: 14.65pt;&quot;&gt;
&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Принимая во внимание
незначительную степень различий между двумя моделями, любопытно узнать, почему
объектно-реляционные системы завоевали всеобщее при­знание на рынке СУБД, а
объектно-ориентированные — нет. Главная причина, по нашему мнению, заключается
в том, что к тому моменту, когда объектно-ориентированные системы получили
сколько-нибудь серьезное развитие, реляцион­ные СУБД уже существовали в тысячах
или даже миллионах экземпляров. По мере включения объектно-ориентированных
инструментов в реляционные коммерческие продукты их производители тщательно
заботились об обеспечении обратной совмес­тимости. Иными словами, новейшие
версии систем все еще оказывались способными поддерживать весь имеющийся в
наличии код и схемы баз данных — даже в том случае, если пользователь, выполняя
обновление системы, принимал решение об отказе от ка­ких бы то ни было
объектно-ориентированных возможностей. С другой стороны, пере­ход от
реляционной к &quot;чистой&quot; объектно-ориентированной системе потребовал бы
глу­бокого пересмотра существующих работоспособных решений. Поэтому, какие бы
со­блазнительные перспективы объектно-ориентированная модель ни сулила, все они
меркнут в сравнении с теми потенциальными трудностями, которые пришлось бы пре­одолеть
на пути превращения реляционной базы данных в объектно-ориентированную.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style99&quot; style=&quot;margin-top: 10.9pt; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;Блог об sql базах данных и не только.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogoshishi.blogspot.com/feeds/8308876358095970275/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://blogoshishi.blogspot.com/2012/04/oid.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3467365624233960471/posts/default/8308876358095970275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3467365624233960471/posts/default/8308876358095970275'/><link rel='alternate' type='text/html' href='http://blogoshishi.blogspot.com/2012/04/oid.html' title=''/><author><name>ANDREy</name><uri>http://www.blogger.com/profile/06153228097074422790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3467365624233960471.post-67243228286696883</id><published>2012-04-23T12:52:00.003-07:00</published><updated>2012-04-23T12:52:37.593-07:00</updated><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;



&lt;br /&gt;
&lt;div class=&quot;Style64&quot; style=&quot;margin-top: 7.9pt; mso-pagination: widow-orphan;&quot;&gt;



&lt;/div&gt;
&lt;div class=&quot;Style64&quot; style=&quot;margin-top: 7.9pt; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle943&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;&lt;strong&gt;Объекты и кортежи&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style32&quot; style=&quot;line-height: 10.1pt; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 0cm; margin-right: .6pt; margin-top: 3.7pt; mso-line-height-rule: exactly; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Содержимым объекта является структура с компонентами
для атрибутов и связей класса. Стандарт&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; ODL&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; не содержит предписаний
относительно того, как должна пред­ставляться информация о связях, но можно
предположить, что объект соединяется с другими объектами посредством
определенного набора указателей. Кортеж также описывается структурой, но в
традиционной реляционной модели предусматривается, что кортеж обладает только
компонентами атрибутов. Связи представляются кортежа­ми других отношений (см.
раздел 3.3.2 на с. 102). Объектно-реляционная модель, од­нако, позволяет
рассматривать множества ссылок в виде компонентов кортежей, и по­этому
допускает включение информации связей непосредственно в кортежи, пред­ставляющие
&quot;объекты&quot; или &quot;сущности&quot;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style64&quot; style=&quot;margin-top: 8.15pt; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle943&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Экземпляры классов и отношения&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style32&quot; style=&quot;line-height: 10.2pt; margin-top: 3.7pt; mso-line-height-rule: exactly; mso-pagination: widow-orphan; text-indent: 14.75pt;&quot;&gt;
&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;В языке&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; ODL&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;
все объекты класса трактуются в контексте экземпляра&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; (extent)&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; клас­са. Объектно-реляционная модель допускает возможность
существования нескольких различных отношений с одной и той же схемой, так что
должны быть предусмотрены и более развитые средства различения членов одного и
того же класса.&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; ODL,&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; однако, позволяет определять
интерфейсы&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; (interfaces)&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; — по существу, те же классы,
но без объявления экземпляра (см. врезку &quot;Интерфейсы&quot; на с. 169).
Помимо того, в&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; ODL &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;предусмотрена возможность
определения произвольного числа классов с различными экземплярами, наследующих
один и тот же интерфейс.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style64&quot; style=&quot;margin-top: 8.3pt; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle943&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Методы&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style32&quot; style=&quot;line-height: 10.45pt; margin-top: 3.7pt; mso-line-height-rule: exactly; mso-pagination: widow-orphan; text-indent: 14.3pt;&quot;&gt;
&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Мы не говорим о возможности
использования методов как о неотъемлемой части объ­ектно-реляционной модели. На
практике, однако, это вполне допустимо, поскольку в стандарте&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; SQL-99&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; и реализациях объектно-реляционной модели предусмотрены средства
объявления и определения методов в составе классов, аналогичные инструментам&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; ODL.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style64&quot; style=&quot;margin-top: 8.15pt; mso-pagination: widow-orphan;&quot;&gt;
&lt;span class=&quot;FontStyle943&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Системы типов&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;Style32&quot; style=&quot;line-height: 10.3pt; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 0cm; margin-right: .1pt; margin-top: 3.95pt; mso-line-height-rule: exactly; mso-pagination: widow-orphan; text-indent: 13.9pt;&quot;&gt;
&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;Системы типов в
объектно-ориентированной и объектно-реляционной моделях весьма схожи. Каждая из
них основана на множестве атомарных типов и предусмат­ривает средства создания
новых типов из существующих с помощью конструкторов структурных типов и типов
коллекций. Набор доступных типов коллекций в каждом конкретном случае может
отличаться, но во всех реализациях предлагаются, как ми­нимум, конструкторы
типов множеств&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; (sets)&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; и мультимножеств&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; (bags).&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; В обоих моде­лях типам множеств (или мультимножеств) структур отводится
особая роль: речь идет о типах классов в&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9.0pt; mso-ansi-language: EN-US;&quot;&gt; ODL&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;FontStyle932&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt; и типах отношений в
объектно-реляционной модели.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span class=&quot;FontStyle943&quot;&gt;&lt;span style=&quot;font-size: 9.0pt;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;Блог об sql базах данных и не только.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogoshishi.blogspot.com/feeds/67243228286696883/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://blogoshishi.blogspot.com/2012/04/blog-post_3447.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3467365624233960471/posts/default/67243228286696883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3467365624233960471/posts/default/67243228286696883'/><link rel='alternate' type='text/html' href='http://blogoshishi.blogspot.com/2012/04/blog-post_3447.html' title=''/><author><name>ANDREy</name><uri>http://www.blogger.com/profile/06153228097074422790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>