Is it possible to test whether a database is hosted on SQL Azure? I am looking at SqlAzureExecutionStrategy for EF6 and only want to apply if the database is actually SQL Azure database.
Currently I am testing if App is running within Azure. However we are looking at allowing clients to host DB themselves so would like some way to identify if DB is a SQL Server or Azure SQL.
Assume EF won't know as it is hiding the implementation details.
Could just have a config setting I guess. Just wondered if it was technically possible.
SELECT CASE ServerProperty('EngineEdition') WHEN 1 THEN 'Personal' WHEN 2 THEN 'Standard' WHEN 3 THEN 'Enterprise' WHEN 4 THEN 'Express' WHEN 5 THEN 'Azure' ELSE 'Unknown' END
I've been using the same function as gvee, ServerProperty(), but with a different property name:
IF ServerProperty('Edition') = 'SQL Azure' PRINT 'true'
For me, this is easier to read and also self-documenting.