问题
We've got a couple of on-premises dbs and we're seeing if we can migrate them to SQL Azure. Some of those dbs have a couple of user defined functions written in C# in an assembly (SAFE). After running a search, I've found a couple of posts which contradict each other. Some say that v12 supports CLR code. Others say it doesn't. So, here are my questions:
- Does V12 supports embedding clr assemblies?
- How can we export the generation script for azure with the assembly? Whenever we set the export option to azure we end up getting an error saying that clr user defined functions are not supported in azure.
Thanks guys!
Luis
回答1:
CLR Functions are not supported in Azure:
Check here:
Azure SQL Database Transact-SQL differences
Under unsupported features it mentions ".NET Framework CLR integration with SQL Server"
I believe there may be some confusion as to whether it does or doesn't support them as they used to in one version, then they removed support.
Here is a link detailing the fact they were supported, but got pulled, apparently due to a security issue:
Breaking News, Literally: SQL CLR Support Removed from Azure SQL DB
回答2:
Azure SQL support now CLR using Azure SQL managed instance. https://docs.microsoft.com/en-us/azure/sql-database/sql-database-managed-instance-transact-sql-information#clr
回答3:
Using managed instance you can have almost all support benefits of an on premise including C# CLR. To access the instances you have to use SSMS Preview 6 of SQL Server Management Studio 18 or TSQL.
来源:https://stackoverflow.com/questions/37342550/does-or-does-not-sql-azure-support-clr-assemblies