Текущий архив: 2003.05.19;
Скачать: CL | DM;
ВнизExtendet function в (см. UDF)? Найти похожие ветки
← →
АлексейК (2003-04-29 04:28) [0]Возникло желание написать свой пакет функций для MSSQL2000, подобных UDF в InterBase, однако в документации нашел только описание создания расширенных хранимых процедур, которые подключаются из DLL. Но для их выполнения нужно использовать команду EXEC, и следовательно в выражение их неподставишь. Если у кого-нибудь оптыт в этом деле?
← →
mad0max (2003-04-29 05:11) [1]А что в MS SQL есть Extented Functions? Я все время думал что там Extented Procedures, я думаю этим все сказано....
А вообще я в свое время писал эти расширенные процедуры, в один прекрасный момент мне надоли постоянные тормоза и я переписал все на нормальный SQL, по сей день не жалею об этом... Так что я бы посоветовал использовать обычные хранимые процедуры или функции....
Я так думаю...
:)
← →
wicked (2003-04-29 05:58) [2]а функцию с exec"ом не судьба написать?...
← →
stone (2003-04-29 09:13) [3]
> Возникло желание написать свой пакет функций для MSSQL2000
см. справку в BOL по CREATE FUNCTION
← →
АлексейК (2003-04-29 12:09) [4]Поясняю.
Для сравнения два запроса:
1. select substring(field_text, x, y)+" "+substring(field_text, x, y) from table
2. select format_str(field_text) from table
Где format_str
create function format_str(@vl varchar(X))
returns varchar(x)
as
begin
declare @r varchar(x)
set @r=substring(vl, x, y)+" "+substring(vl, x, y)
return(@r)
end
Так вот первый запрос (учитывая, что substring встроенная функция) работает на порядок быстрее, и загрузка процессора при этом много ниже. Если сравнить трассировку этих двух запросов, то разница приципиальная. Так вот и хотелось бы подключить свои функции из DLL, именно как функции дабы использовать в запросах.
Страницы: 1 вся ветка
Текущий архив: 2003.05.19;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.006 c