Вопрос о хранимых процедурах SQL Server - PullRequest
1 голос
/ 24 января 2010

У меня есть хранимая процедура SQL Server, которая используется годами. Эта хранимая процедура вызывает множество других процедур. Я хотел бы извлечь каждую внутреннюю процедуру по одной и реализовать ее бизнес-логику в проекте .NET Class.

Для этого мне нужно вызвать сборку .NET из родительской хранимой процедуры, а возвращенный результат будет использован родительской процедурой. Поскольку SQL Server 2005 и выше имеет CLR-интеграцию, поэтому я думаю, что выполнение сборки .NET внутри хранимой процедуры [или любых объектов базы данных] не должно быть большим делом, пожалуйста, укажите мне несколько ссылок, где я могу найти примеры или статью для реализации Это?

Большое спасибо за вашу помощь.

Ответы [ 3 ]

3 голосов
/ 24 января 2010

Я действительно чувствую, что это было бы неправильным использованием SQL CLR. Целью интеграции CLR является поддержка сложных типов данных и операций, которые обычно очень трудно выполнить в чистом SQL (таких как последовательности, регулярные выражения, иерархия, геопространственные данные и т. Д.), Чтобы не реализовывать модель предметной области в вашей базе данных. *

Доменные модели и бизнес-логика отделены от реляционных моделей / моделей данных. Они должны быть на должном уровне бизнеса. Не взламывайте их в базу данных с помощью CLR.

(Примечание: я использую SQLCLR довольно неплохо. Я не ругаюсь за интеграцию CLR. Я просто не думаю, что этот вопрос отражает мудрое решение о дизайне.)

0 голосов
/ 24 января 2010

Я думаю, что вы должны использовать SQL Server Integration Services (SSIS).Насколько я понимаю, он решает этот случай, чтобы организовать вызовы процедур, и дает вам гораздо больше ...

Я не слишком уверен, является ли решение о переносе этого решения за пределы уровня БД.

Надеюсь, это поможет ..

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