Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Пользовательские функции

Пользовательские функцииПользовательские функции расширяют встроенные в СУБД возможности. Они входят в стандарты SQL:2008 и SQL/PCM (когда функция содержится в модуле) и будут подробно рассмотрены в главе 16.

Несмотря на то что не все производители СУБД позволяют создавать пользовательские функции, в базах “большой тройки” эта возможность поддерживается, что позволяет многократно использовать программный код. Эти функции могут быть вызваны пользователями и программами. Пользовательские функции обычно реализуются с помощью процедурного языка, такого как Java, PL/SQL и C# в Oracle; Transact-SQL, C и языков семейства. NET в Microsoft SQL Server; Java в IBM DB2 9.5. Детали реализации и синтаксиса сильно варьируются в разных СУБД. Также следует отметить, что использование Java и C# всегда негативно сказывается на производительности, поскольку эти языки привносят в обработку данных дополнительный уровень. В дополнение к функциям, создаваемым и обслуживаемым в СУБД, все три ведущих производителя предлагают средства сценариев и исполняемых модулей для вызова внешних объектов, поддерживаемых операционной системой. Сам механизм вызова внешних процедур отличается у разных производителей, однако принцип остается одним и тем же — возможность взаимодействия с внешней операционной системой, не имеющей ограничений, налагаемых самой СУБД. Такие программы можно писать на любом языке, который поддерживает операционная система. Так как внешняя программа может иметь доступ ко всем ресурсам системы, этот подход может оказаться очень востребованным. Однако за это приходится расплачиваться потенциальными проблемами защиты информации, устойчивости и производительности; так что использовать подобные средства следует обдуманно. Micrsofot SQL Server, начиная с версии 2000, предлагает возможность вызова и использования объектов OLE (ActiveX) в коде SQL, в теле пользовательских хранимых процедур с помощью привлечения системных хранимых процедур. С помощью этих средств можно получить доступ к возможностям любых программ, поддерживающих интерфейс OLE (к примеру, программ пакета Microsoft Office). Компания Microsoft постепенно сместила акцент со стандарта OLE на технологиии новой среды. NET, которая встроена в Microsoft SQL Server 2008.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *