|
|
|
Как в CLR UDF сделать селект из функции
|
|||
|---|---|---|---|
|
#18+
С Новым Годом! Мне казалось, что я когда-то встречал подобный вопрос, но пропустил его мимо, а сейчас сам с этим столкнулся, но решение нигде не смог найти. Может кто сталкивался... Суть вот в чем: SQL Server 2008 Express Visual Studio 2008 Pro Создаю на транзакт скуле пользовательскую скалярную функцию: Код: plaintext 1. 2. 3. 4. 5. В VS создаю CLR UDF функцию, в которой делается селект, в котором участвует мой функция dbo.zzz(). При выполнении этой функции в SQL Server получаю ошибку: Код: plaintext 1. 2. 3. Без функции dbo.zzz() все работает, даже применение встроенных в сервер функций не вызывает данной ошибки, а вот пользовательские.... Пробовал делать ALTER DATABASE [БАЗА] SET TRUSTWORTHY ON - до лампочки. Сделал полный UNSAFE своей сборки - тоже самое. Еще раз повторюсь, что весь остальной код работает безупречно, любые селекты из БД и запуск хранимок происходит на ура до тех пор, пока в запросах или запускаемых хранимых процедурах не участвуют пользовательские функции. Правда забавно то, что если я функцию dbo.zzz() перепишу как CLR UDF, то все проходит на ура и работает как надо, но ведь это не выход, как то не кошерно переносить элементарные функции в среду CLR. В чем беда? Где решение проблемы? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2009, 15:29 |
|
||
|
|

start [/forum/topic.php?fid=17&tid=1351999]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
58ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
16ms |
get tp. blocked users: |
1ms |
| others: | 220ms |
| total: | 320ms |

| 0 / 0 |
