Поддерживает ли SQL Azure сборки CLR или нет?
У нас есть пара локальных баз данных, и мы видим, сможем ли мы перенести их в SQL Azure. Некоторые из этих БД имеют несколько пользовательских функций, написанных на C# в сборке (SAFE). После поиска я нашел пару постов, которые противоречат друг другу. Некоторые говорят, что v12 поддерживает код CLR. Другие говорят, что нет. Итак, вот мои вопросы:
- V12 поддерживает встраивание сборок clr?
- Как мы можем экспортировать сценарий генерации для Azure со сборкой? Всякий раз, когда мы устанавливаем опцию экспорта в azure, мы в конечном итоге получаем ошибку о том, что пользовательские функции clr не поддерживаются в azure.
Спасибо, парни!
Луис
1 ответ
Функции CLR не поддерживаются в Azure:
Проверьте здесь:
Различия Transact-SQL базы данных Azure SQL
Под неподдерживаемыми функциями упоминается "интеграция.NET Framework CLR с SQL Server".
Я полагаю, что может быть некоторая путаница относительно того, поддерживает ли он их или нет, как они привыкли в одной версии, тогда они удалили поддержку.
Вот ссылка, подробно описывающая тот факт, что они были поддержаны, но были извлечены, очевидно, из-за проблемы безопасности:
Последние новости, буквально: поддержка SQL CLR удалена из базы данных SQL Azure
Azure SQL теперь поддерживает CLR, используя управляемый экземпляр Azure SQL. https://docs.microsoft.com/en-us/azure/sql-database/sql-database-managed-instance-transact-sql-information
Используя управляемый экземпляр, вы можете иметь почти все преимущества поддержки, включая C# CLR. Для доступа к экземплярам вы должны использовать SSMS Preview 6 из SQL Server Management Studio 18 или TSQL.
У вас есть 2 варианта:
- Используйте управляемый экземпляр Azure SQL (очень дорого, более 1000 долларов в месяц)
- Создайте виртуальную машину Azure и установите на нее SQL Server (намного дешевле, менее 20 долларов в месяц)