(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Создание системной функции в MS SQL Server 2008

Источник: t-sql

В очередной раз на форуме встретил вопрос: "Создание системной функции в MS SQL Server 2008". Как известно, в SQL Server 2000 эта задача решалась достаточно легко и без малой крови (How to Write Your Own System Functions). Но как всё-таки решить подобную задачу на SQL Server 2005/2008?
Если верить официальным источникам, то никак. Но…есть способ

Внимание

не рекомендую им пользоваться!!!

1) Останавливаем наш SQL Server

2) Запускаем его в монопольном режиме (с флагом -m):
cd Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLBinn
sqlservr.exe -m

3) Создаём нашу функцию в системной БД (скрытой в обычном режиме работы SQL Server`а) mssqlsystemresource

01.USE mssqlsystemresource
02.GO
03. 
04.-- Включаем возможность изменения данный в БД Resource
05.ALTER DATABASE mssqlsystemresource SET READ_WRITE
06.GO
07. 
08.-- Ваша функция
09.CREATE FUNCTION dbo.fn_MyFunction()
10.RETURNS NVARCHAR(255)
11.AS
12.BEGIN
13.RETURN @@VERSION
14.END
15.GO
16. 
17.-- Публикуем во все БД
18.EXEC sys.sp_SetPublicInterfaceObject 'fn_MyFunction'
19.GO
20. 
21.-- Возвращаем БД Resource в режим "только чтение"
22.ALTER DATABASE mssqlsystemresource SET READ_ONLY
23.GO

4) Перестартовываем наш SQL Server в обычном режиме

5) Пользуемся нашей-системной функцией в контексте любой БД

PS: Так как БД mssqlsystemresource хранит все системные объекты, то при установке очередного SP обновиться вся эта база, соответственно и ваши "системные" функции исчезнут и их придётся создавать заново.

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 01.12.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft Office 365 Профессиональный Плюс. Подписка на 1 рабочее место на 1 год
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год.
Microsoft Office для дома и учебы 2019 (лицензия ESD)
Microsoft Windows Professional 10, Электронный ключ
Microsoft 365 Apps for business (corporate)
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Реестр Windows. Секреты работы на компьютере
Каждый день новые драйверы для вашего компьютера!
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100