Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce UseAzureSql/UseAzureSynapse as alternatives to UseSqlServer #33816

Open
roji opened this issue May 26, 2024 · 8 comments · May be fixed by #34052
Open

Introduce UseAzureSql/UseAzureSynapse as alternatives to UseSqlServer #33816

roji opened this issue May 26, 2024 · 8 comments · May be fixed by #34052

Comments

@roji
Copy link
Member

roji commented May 26, 2024

We're increasingly seeing T-SQL divergence, where certain features are not available e.g. on Azure Synapse (e.g. #33555), and some features are only available Azure SQL (e.g. the new JSON type, the new vector search capabilities). To account for this divergence, we'll allow users to specify which database is being targeted by providing UseAzureSql/UseAzureSynapse alternatives to UseSqlServer.

Note: we'd need to duplicate all current variants of UseSqlServer.

@ErikEJ
Copy link
Contributor

ErikEJ commented May 27, 2024

So given the following engine editions:

2 = Standard (For Standard, Web, and Business Intelligence.)
3 = Enterprise (For Evaluation, Developer, and Enterprise editions.)
4 = Express (For Express, Express with Tools, and Express with Advanced Services)
5 = SQL Database
6 = Azure Synapse Analytics
8 = Azure SQL Managed Instance
9 = Azure SQL Edge (For all editions of Azure SQL Edge)
11 = Azure Synapse serverless SQL pool

UseSqlServer: 2, 3, 4, 8 (5, 9)

UseAzureSql: 5, 8 (8 depending on Update policy - default is SQL Server 2022 compatibility)

UseAzureSynapse: 6, 11

@roji
Copy link
Member Author

roji commented May 27, 2024

@ErikEJ are you suggesting we auto-detect based on the engine queried from the database, or something similar? Or allow the user to specify the engine edition directly?

@ErikEJ
Copy link
Contributor

ErikEJ commented May 27, 2024

@roji No - just trying to clarify for myself (and maybe others) what the options will actually mean

@ErikEJ
Copy link
Contributor

ErikEJ commented May 27, 2024

@roji Just was made aware of this, affecting Azure SQL Managed Instance

@roji
Copy link
Member Author

roji commented May 27, 2024

@ErikEJ interesting, thanks - I wasn't aware of this... It seems to optionally bring SQL Managed Instance closer to SQL Azure in terms of the engine/features. Do you see this as changing the above proposal?

@ErikEJ
Copy link
Contributor

ErikEJ commented May 27, 2024

@roji Yeah, just got this in a newsletter, seems like a brand new thing. It does not affect the above proposal, but I have made some small opdates to my list above.

@ajcvickers ajcvickers removed this from the 9.0.0 milestone May 28, 2024
@ajcvickers
Copy link
Member

Removing the milestone and adding needs-design to revisit if we are doing the right thing here, and what the mappings should be.

@drmcclelland
Copy link

Thank you so much for working on this issue - it will be very helpful to users of Azure Synapse like me! The lack of support in Synapse for ESCAPE (in LIKE clauses) and OFFSET (for paging) make it harder to use EF for this particular variant of T-SQL.

@ajcvickers ajcvickers added this to the 9.0.0 milestone Jun 3, 2024
@cincuranet cincuranet linked a pull request Jun 21, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants