Azure SQL Devs’ Corner
Voices from the Azure SQL PM Team, focusing on development and developers
Latest posts
Data API builder’s “request-body-strict” Simplifies Client Code
Data API builder (DAB) provides REST and GraphQL endpoints over SQL Server, Azure Cosmos DB, PostgreSQL, MySQL, and SQL Data Warehouse. The configuration value controls how REST endpoints treat unknown JSON properties in the payload: Read the documentation. Let's try it out The database table Imagine a simple table called Category with only two columns: The configuration file Create your Data API builder configuration file with the following command line commands: The JSON payload When you call the REST endpoint for Category at , the resulting JSON looks like this: The C...
MSSQL Extension for VS Code: Introducing Edit Data (Public Preview)
Overview Working with table data is an essential part of database development — whether you’re validating behavior, debugging issues, or quickly seeding data. But switching between tools or writing repetitive T-SQL statements can slow down your workflow. We are excited to announce the Public Preview of Edit Data in the MSSQL extension for Visual Studio Code — a modern, interactive way to browse and modify table data directly within the editor. Edit Data (Preview) brings a familiar, spreadsheet-like experience, combining inline editing, validation, pagination, and real-time script generation into a fast and intu...
New T-SQL AI Features are now in Public Preview for Azure SQL and SQL database in Microsoft Fabric
At the start of this year, we released a new set of T-SQL AI features for embedding your relational data for AI applications. Today, we have brought those features to Azure SQL and SQL database in Microsoft Fabric. This post will help you get started using the new AI functions of Azure SQL. Prerequisites Set up your environment The following section guides you through setting up the environment and installing the necessary software and utilities. Set up the database The following section guides you through using the embeddings model to create vector arrays on relation data and use ...
MSSQL Extension for VS Code: GitHub Copilot Chat GA and New Public Previews for Edit Data, Data-tier Application, and more
The MSSQL Extension for VS Code continues to evolve, delivering features that make SQL development more integrated, more consistent, and more developer-friendly. In version v1.37.0, we’re announcing the Public Preview of Edit Data, Data-tier Application (DACPAC/BACPAC) export & import, and the SQL Database Projects Publish Dialog, along with the General Availability of GitHub Copilot — four capabilities that bring modern data editing, migration workflows, schema publishing, and AI-powered assistance directly into your development workflow inside Visual Studio Code. What’s new in MSSQL extension for VS Code...
Public preview of vector indexing in Azure SQL DB, Azure SQL MI, and SQL database in Microsoft Fabric
We are happy to share that DiskANN vector indexing is now in public preview across Azure SQL Database, Azure SQL Managed Instance, and SQL database in Microsoft Fabric. DiskANN is a cutting-edge algorithm for efficient vector similarity search, making it ideal for powering recommendation systems, image and multimedia search, and advanced retrieval-augmented generation (RAG) solutions. Built for large-scale vector search, DiskANN integrates seamlessly with the Microsoft SQL query engine, enabling you to combine semantic search with the full power of T‑SQL, joins, filters, analytics, without moving data or addin...
SQL Server 2025 Embraces Vectors: setting the foundation for empowering your data with AI
SQL Server 2025 marks a major milestone in database innovation by introducing native support for VECTOR data types and vector functions. These are now fully available in the freshly released SQL Server 2025 RTM. This means you can store and process high-dimensional embeddings directly within your database. It eliminates the need to move data across separate systems. With this integration, your data remains secure, synchronized, and governed by SQL Server’s enterprise-grade compliance and security features. The RTM release includes the VECTOR data type and built-in functions like VECTOR_DISTANCE. This suppor...
General Availability Announcement: Regex Support in SQL Server 2025 & Azure SQL
We’re excited to announce the General Availability (GA) of native Regex support in SQL Server 2025 and Azure SQL — a long-awaited capability that brings powerful pattern matching directly into T-SQL. This release marks a significant milestone in modernizing string operations and enabling advanced text processing scenarios natively within the database engine. What is Regex? The other day, while building LEGO with my 3-year-old — an activity that’s equal parts joy and chaos — I spent minutes digging for one tiny piece and thought, “If only Regex worked on LEGO.” That moment of playful frustration tur...
Build an AI Agentic RAG search application with React, SQL Azure and Azure Static Web Apps
Introduction Leveraging OpenAI for semantic searches on structured databases like Azure SQL enhances search accuracy and context-awareness, providing more relevant and insightful results. This example showcases the use of Azure SQL for storing and searching data with AI. By implementing the RAG pattern with Azure SQL, the sample efficiently searches for the most relevant code and comprehensive end-to-end examples based on user queries. The AI then generates results that include the most pertinent documents along with explanations of their relevance. The final result is a web application, mobile friendl...
Data API builder 1.6: Advanced Behaviors with Special HTTP Headers
Data API builder (DAB) provides REST and GraphQL endpoints over SQL Server, Azure Cosmos DB, PostgreSQL, MySQL, and SQL Data Warehouse. REST endpoints support several HTTP headers that let you control how requests behave. These headers give you precision over updates, caching, and discovering new resources. If-Match By default, DAB treats PUT and PATCH as upserts: update if the row exists, insert if not. Sometimes you need stricter semantics. If-Match provides update-only behavior. If-Match in DAB only supports *. Any other value is rejected. Example request that only updates if the row exists: ...
Data API builder 1.6: Flexible Logging for Every Developer
Previously, developers were limited to the default log levels and filters hardcoded into DAB. With release 1.6, you can now configure filters and levels for logs emitted by the engine. This release also adds new sinks. In addition to Application Insights and OpenTelemetry publishing, Data API builder now supports both file and Azure Log Analytics as targets. Rich, configurable logging wherever you need it. File sink (⭐ new!) Until now, DAB developers were mostly limited to console logs in the container. With release 1.6, you can sink logs to local files in a container folder to systematically debug and ob...
Using the new SqlVector type with EF Core and Dapper
Azure SQL vector support has been generally available for a few months now, and the ecosystem is quickly evolving to make working with vectors in your applications as seamless and efficient as possible. With the release of Microsoft.Data.SqlClient 6.1, developers can now take advantage of binary transport for vector data via the new class. This significantly improves performance when moving vectors between your application and the database, laying the groundwork for optimized vector handling in popular .NET libraries like: Here’s how you can start using in each of these libraries: EF Core 9...
SQL Server 2025 RC1: faster DiskANN and FP16 support
We’re excited to announce major improvements to DiskANN in SQL Server 2025 RC1, making vector search faster, more scalable, and more storage-efficient than ever before. ⚡ Significantly Faster Index Builds Building DiskANN indexes is now considerably faster, thanks to optimizations that better utilize all available CPU cores and improve the efficiency of vector space traversal. This means quicker index creation and faster time-to-results for your AI-powered applications. 🧠 Improved Scalability Across Processors SQL Server 2025 RC1 brings enhanced scalability to DiskANN, allowing it to scale more effici...
MSSQL Extension for VS Code: Fabric Integration and GitHub Copilot Slash Commands (Public Preview)
The MSSQL Extension for VS Code continues to evolve, delivering features that make SQL development more integrated, more consistent, and more developer-friendly. In version v1.36.0, we’re announcing the Public Preview of Fabric Connectivity (Browse), SQL Database in Fabric Provisioning, and GitHub Copilot Slash Commands — three capabilities that bring Microsoft Fabric and AI-powered assistance directly into your development workflow inside Visual Studio Code. What’s new in MSSQL extension for VS Code v1.36 This release introduces three major capabilities designed to streamline the SQL development experience: ...
AI-based T-SQL Refactoring: an automatic intelligent code optimization with Azure OpenAI
This article presents an AI-powered approach to automating SQL Server code analysis and refactoring. The system intelligently identifies inefficiencies and common T-SQL anti-patterns, applying best practices through a set of formalized coding rules, using prompt-driven instructions. It not only automatically rewrites problematic and inefficient code but also delivers contextual recommendations to improve quality, security, and maintainability. Designed to address real-world use cases, this methodology enables organizations to modernize and optimize their SQL workloads more efficiently, accelerating migrati...
Using SQL Server’s new AI features and Python to create a T-SQL assistant
I recently created a GitHub repository to share the T-SQL scripts I've accumulated over 10 years as a DBA. However, I've always struggled to find the right script when I need it. For years, I relied on simple shell commands like find or just my memory, which could take 10-30 minutes, if I was lucky enough to find it. But, we are in the AI age, so I created that simple web application where you type what you want, and it finds the best scripts for your needs. The solution was created using the following technologies: In this post, I will focus on SQL Server's role, exploring i...
Create embeddings in SQL Server 2025 RC0 with a local ONNX model on Windows
With the release of SQL Server 2025 RC0, we have enabled the ability to use a local ONNX model on the server for embeddings. This allows you to use these models without having any network traffic leaving the local environment. Getting Started This example guides you through setting up SQL Server 2025 on Windows with an ONNX runtime to enable local AI-powered text embedding generation. ONNX Runtime is an open-source inference engine that allows you to run machine learning models locally, making it ideal for integrating AI capabilities into SQL Server environments. Step 1: Enable developer preview ...
MSSQL Extension for VS Code: Schema Compare, Schema Designer, Local SQL Server Container GA
The MSSQL Extension for VS Code continues to evolve, delivering features that make SQL development more visual, more consistent, and more developer-friendly. In version v1.35.0, we’re announcing the General Availability (GA) of Schema Designer, Schema Compare, and Local SQL Server Containers — three powerful tools that bring structure, clarity, and flexibility to your local development workflow. What’s new in MSSQL extension for VS Code v1.35 This release introduces three major capabilities designed to streamline the SQL development experience: In addition to these major features, this rele...
Updated .NET and JDBC Drivers with Native Vector Data Support for High-Performance AI Workload
We’ve just released major updates to our data access libraries, bringing native support for vector data to both the .NET and JDBC ecosystems, unlocking significant performance gains for AI and machine learning workloads. Microsoft.Data.SqlClient 6.1.0 With the new class, you can now handle vector data in binary format, replacing the slower JSON array approach. This means: Check out the official documentation with a sample: Native vector data type .NET Driver Support For all details, check out the release notes: https://github.com/dotnet/SqlClient/releases/tag/v6.1.0 Microsoft JDBC Driver ...
Announcing General Availability of UNISTR function and ANSI SQL || Operator in Azure SQL
We’re excited to announce the General Availability (GA) of two long-standing capabilities that address critical needs for SQL developers and enterprise customers in Azure SQL Database and Azure SQL Managed Instance, configured with the Always-up-to-date update policy: These additions improve ANSI SQL compliance in Azure SQL, streamline migration from other platforms, and boost developer productivity. UNISTR function: Unicode made easy The UNISTR function provides support for Unicode string literals by letting you specify the Unicode encoding value of characters in the string, making...
MSSQL Extension for VS Code: Agent Mode Updates, Colored Connections, and Schema Designer Enhancements
The MSSQL Extension for VS Code keeps getting better—bringing thoughtful updates that make SQL development more conversational, more visual, and more local. In version v1.34.0, we’ve focused this release on deepening GitHub Copilot Agent Mode, improving connection clarity through color-coded indicators, making local container workflows more flexible, enhancing the Schema Designer, and solving bugs across the experience. Here’s a look at what’s new in this release and how it helps simplify your SQL development workflow. What’s new in MSSQL extension for VS Code v1.34 This release includes three major improvem...
Announcing General Availability of Native Vector Type & Functions in Azure SQL
We are happy to announce that Native vector support in Azure SQL Database and Azure SQL Managed Instance is moving to General Availability this summer. Deployments are already underway, and several regions have begun receiving the feature. What is going GA? Integrated Vector Data Type Azure SQL introduces a dedicated VECTOR data type that simplifies the creation, storage, and querying of high-dimensional vector embeddings vector embeddings directly within your relational database. Built-in Vector Functions Includes essential vector operations like: VECTOR_DISTANCE , VECTOR_NORM VECTOR_NORMALIZE. Read ...
MSSQL Extension for VS Code: Local Containers, GitHub Copilot Agent Mode and Connection Groups
The MSSQL Extension for VS Code continues to evolve, bringing powerful new features that make SQL development more local, more organized, and more intelligent. In version v1.33.0, we’re introducing Local SQL Server container, GitHub Copilot Agent Mode, and Connection Groups—three capabilities designed to simplify and modernize the way developers build applications using SQL Server in Visual Studio Code. Here’s a closer look at what’s included in this release and how these features can enhance your SQL development workflow. What’s new in MSSQL extension for VS Code v1.33 This release introduces three major ca...
SQL Server 2025 CTP 2.1: DiskANN Improvements
I'm happy to announce that SQL Server 2025 CTP 2.1 is now available, and it brings significant improvements to DiskANN support. While DiskANN remains in preview, each release continues to remove limitations and boost performance. In this release, we’ve made a particularly notable leap in vector index creation speed, with more enhancements on the horizon. What’s New in DiskANN DiskANN is Microsoft’s algorithm for large-scale vector search and recommendation systems. It’s designed to scale to web-sized datasets while maintaining high recall and performance. With SQL Server 2025, DiskANN is fully integrated in...
An open-source AutoScaler for Azure SQL Hyperscale Elastic Pools
TrackAbout is a worldwide provider of SaaS applications for tracking reusable, durable, physical assets like chemical containers and gas cylinders. With over 22 million physical assets tracked across 350 customers, each with their own Azure SQL database, optimizing our infrastructure for both cost and performance is a critical, ongoing mission. Our journey with Microsoft technologies goes back to our founding in 2002. We started by racking our own servers, moved to managed hosting, and finally migrated to Azure in 2016 to gain more control and scalability. A core part of our architecture today is Azure SQL...
A story of collaborating agents: chatting with your database the right way
Today, more and more customers are embracing AI with one clear goal in mind: they want to chat with their data. And by "data," they mean all of it: structured tables, unstructured documents, images, audio, and more. This demand has given rise to hybrid approaches that blend semantic understanding with precise data retrieval. But here’s the challenge: while embeddings and vector search play a critical role in semantic search, they’re not enough on their own — especially when the question is highly specific and demands an exact answer. As I discussed in Improve the “R” in RAG and Embrace Agentic RAG in Azure...
Azure SQL Cryptozoology AI Embeddings Lab Now Available!
Missed out on MS Build 2025? No worries! Our lab is now available for your exploration. Dive into a unique cryptozoology experience using Azure SQL and Azure AI to uncover intriguing (and true) connections among cryptids worldwide. Curious about who would reign supreme in a battle royal or which regions of the world hold the key to encountering these mysterious creatures? Embark on a journey of discovery with the Azure SQL Cryptozoology AI Embeddings Lab! Discover more HERE!
Vector Support Public Preview now extended to Azure SQL MI
We are thrilled to announce that Azure SQL Managed Instance now supports Vector type and functions in public preview. This builds on the momentum from Azure SQL Database, where vector support has been in public preview since December. Check out the detailed announcement 💡 Why Choose Azure SQL Managed Instance for AI-Driven Modernization? 🔄 Quick Start: Use the Free Offer to Explore Vector Support in Azure SQL MI Before we dive deeper, let’s take a moment to explore how you can get hands-on experience with these capabilities—at no cost. Azure offers a SQL Managed Instance free offer , perfe...
Getting started with AI in SQL Server 2025 on Windows
Back in the earlier part of the year (February maybe?), I put this tutorial together for our early adopters in the SQL Server 2025 program. It’s a guide for setting up SQL Server 2025 in a Hyper-V VM (I used Windows Server) with Ollama and ngnix as an https proxy. It's a variation of my workshops for Ignite 2024 and a SQL in Fabric one from February 2025. This tutorial helps you get started using the new AI features of SQL Server 2025 on Windows/Windows Server. Prerequisites Set up your environment The following section guides you through setting up the environment and installing the nec...
New AI Features in SQL Server 2025
We have some great new AI Features in SQL Server 2025. I also figured a video would be better than reading a blog.... https://www.youtube.com/watch?v=dDJheVYgeVo but, you can also read all about it here.
MSSQL Extension for VS Code: Introducing Schema Designer (Preview)
Overview Database design can often feel like navigating a maze of tables, relationships, and data types — especially when working directly with T-SQL scripts. But what if you could map out your database, make changes to your tables, and manage complex schemas within a graphical interface? We are excited to announce the Public Preview of Schema Designer in the MSSQL extension for Visual Studio Code! Features The Schema Designer feature offers these features: Open Schema Designer Right-click on the database in the object explorer and select "Design Schema (Preview)" from the menu...
Announcing the General Availability (GA) of JSON data type & JSON aggregates…
We are excited to announce the General Availability (GA) of the native JSON data type and JSON aggregates - JSON_OBJECTAGG & JSON_ARRAYAGG. You can use the JSON data type and JSON aggregates to integrate and work with JSON documents more efficiently in the database. This functionality is available in Azure SQL Database, Azure SQL Managed Instance with the Always-up-to-date update policy. The functionality is also available in SQL Server 2025 preview. Native JSON data type The native JSON data type stores JSON documents in a binary format that the database engine can manage efficiently. The JSON data type is...
Unlocking the Power of Regex in SQL Server
Regular expressions, or regex, are powerful tools for text manipulation and pattern matching. They are incredibly useful in various scenarios, such as data validation, extraction, and transformation. SQL Server 2025 introduces native support for regex functions, making it easier to perform complex text operations directly within SQL queries. This Regex support is available in SQL Server 2025 public preview, Azure SQL Database, SQL DB in Fabric, and Azure SQL Managed Instance. The table-valued functions (TVFs) are currently available on SQL Server 2025 public preview however they will follow on other offerings as ...
MSSQL Extension for VS Code: New UI Goes GA and GitHub Copilot Enters Preview
The SQL development experience is taking a major leap forward with the MSSQL Extension for VS Code. The MSSQL extension is evolving to meet the needs of modern developers, bringing powerful, intelligent, and intuitive capabilities directly into your daily workflow. With this release, we’re announcing the general availability of the enhanced UI and the public preview of GitHub Copilot integration. Together, these updates streamline how developers connect to databases, write queries, and manage schema objects—whether you’re working locally with SQL Server 2025 or in the cloud with Azure SQL or SQL Database in Fabr...
Avoid T-SQL anti-patterns with the free T-SQL analysis tool
T-SQL Analyzer is a free, open-source, cross platform command line tool for identifying, and reporting the presence of anti-patterns and design issues in SQL Server T-SQL scripts. As a database developer, you can catch any potential bad practices and design problems very early in the project process - this ensures a frictionless path to deployment from development and test environments to production. The tool evaluates your scripts with more than 140 rules for design, naming and performance issues. The rules are created by Microsoft and the SQL Server community. If you already maintain your SQL scripts ...
Efficiently and Elegantly Modeling Embeddings in Azure SQL and SQL Server
Storing and querying text embeddings in a database it might seem challenging, but with the right schema design, it's not only possible, it's powerful. Whether you’re building AI-powered search, semantic filtering, or recommendation features, embeddings, and thus vectors, are now a first-class data type. So how do you model them well inside a database like SQL Server and Azure SQL? In this post, I’ll walk you through a practical, scalable strategy to store embeddings effectively—while keeping your schema clean, your queries readable, and your operations efficient. This blog post is part of a series of blogs ...
MSSQL Extension for VS Code: Introducing Schema Compare (Preview)
Overview We are excited to introduce Schema Compare in the MSSQL Extension for VS Code! It can be tedious to manually manage and synchronize different database versions. Enter Schema Compare, the powerful new feature for MSSQL in VS Code that transforms this tedious task into a seamless experience. With intuitive visualization that instantly highlights additions, removals, and modifications between schemas, you gain complete control over which changes to implement. Whether comparing live databases, dacpac files, or SQL projects, Schema Compare empowers you to synchronize database versions with precision and c...
Predictable LLM results with Structured Output and sp_invoke_external_rest_endpoint
OpenAI recently introduced a powerful new feature for developers: structured output using JSON Schema via the parameter. This makes it possible to request responses from a GPT-4o model that strictly match a given schema—no free-text, no guesswork. If you're working with Azure SQL, this is a game-changer. Combined with the stored procedure and SQL Server's built-in JSON functions, you can now: What Is Structured Output? By default, LLMs like GPT-4 return free-form text—which can be difficult to parse reliably. With structured output, you provide a JSON Schema along with your request, and the m...
Enhancing Search Capabilities in SQL Server and Azure SQL with Hybrid Search and RRF Re-Ranking
In today's data-driven world, delivering precise and contextually relevant search results is critical. SQL Server and Azure SQL Database now enable this through Hybrid Search—a technique that combines traditional full-text search with modern vector similarity search. This allows developers to build intelligent, AI-powered search experiences directly inside the database engine. Funny enough one of the key algorithms needed for implementing Hybrid Search, BM25, has been included in SQL Server is almost forever, without much fanfare: RAG pattern and similarity search is bringing it to the light. What Is Hybrid S...
SQL Conf() 2025 Highlights: So Much Developer Innovation!
For decades, SQL Server has been a cornerstone of data management, evolving to meet the needs of modern developers. What began as a traditional relational engine is now a cloud-enabled, AI-integrated platform designed for building real-world applications. SQL Server continues to meet developers where they are—offering tools, services, and capabilities that simplify complexity and support innovation across the stack. SQL Conf() 2025, held February 26, was a developer marathon built specifically for application developers. While DBAs and data engineers often lead the conversation, this event flipped the focu...
Secure APIs with Data API Builder, Keycloak, and SQL Server
In this article, we'll explore how to create a secure, on-premises API using Data API Builder (DAB), Keycloak, and SQL Server. You'll learn to set up JSON Web Token (JWT) authentication with Role-Based Access Control (RBAC), Attribute-Based Access Control (ABAC), and Row-Level Security (RLS), ideal for secure business scenarios. Want to replicate this setup?All the configuration files, SQL scripts, and Docker setup used in this article are available here: https://github.com/yougnoli/secure-onprem-api-dab-keycloak-sqlserver Technologies Overview What We'll Cover RBAC a...
Vector Search with Azure SQL, Semantic Kernel and Entity Framework Core
Vector databases like Qdrant and Milvus are specifically designed to efficiently store, manage, and retrieve embeddings. However, many applications already use relational databases like SQL Server or SQL Azure. In such cases, installing and managing another database can be challenging, especially since these vector databases may not offer all the features of a modern relational database like Azure SQL or SQL Server. This is where the new vector data type in SQL Azure becomes extremely useful. It allows you to create Retrieval-Augmented Generation (RAG) solutions by storing embeddings in the same place as y...
Build a Streamlit application with Fabric SQL Database
Building an application allows you to operationalize the data you have in Microsoft Fabric, such that it can be consumed by stakeholders in your organization to generate business insights. Streamlit is easy to use to build simple applications without needing to know front-end application frameworks like Flask, Django etc. It makes it easier to prototype and visualize your data in Microsoft Fabric with Streamlit framework. In this blog post we will show how to develop an app using Streamlit and Fabric SQL database. Consider a scenario that you are a data engineer in a retail company and want to keep track of y...
Exploring SQL Server Integration with .NET Aspire: A Collection of Hands-On Samples
I'm happy to share a new GitHub repository with developers: azure-sql-db-aspire. This collection of eight hands-on examples demonstrates how to integrate SQL Server and Azure SQL with .NET Aspire, making it easier to build modern, cloud-native applications. Why .NET Aspire for SQL Server? .NET Aspire is a new opinionated, cloud-ready stack for .NET applications that simplifies development, observability, and orchestration. SQL Server and Azure SQL are well-supported, allowing developers to quickly integrate databases into their applications while benefiting from Aspire’s service discovery, dependency injection,...
MSSQL Extension for VS Code: What’s new and what’s next
The MSSQL extension for Visual Studio Code continues to evolve, bringing powerful new features and enhancements that make SQL development more seamless and efficient. In this update, we’re excited to share the latest improvements in v1.29.0 and give you a sneak peek at what’s coming next in our open roadmap. This extension is designed for developers working with Azure SQL (including Azure SQL Database, Azure SQL Managed Instance, and SQL Server on Azure VMs), SQL Database in Fabric (Preview), or SQL Server as a backend. With a rich set of features for connecting to databases, managing schemas, executing queries,...
Exciting new T-SQL features: Regex support, Fuzzy string-matching, and bigint support in DATEADD – preview
We are thrilled to announce the public preview of three powerful T-SQL features that will elevate your SQL queries: Regular Expressions (Regex) support, Fuzzy string-matching, and bigint support in DATEADD. These enhancements are now available in Azure SQL Database and SQL Database in Microsoft Fabric, offering developers more flexibility, efficiency, and precision in their data operations. They will also help simplify complex operations that previously required workarounds or external processing. In this post, we'll explore the capabilities of each feature, provide practical examples, and explain how they wil...
Go passwordless when calling Azure OpenAI from Azure SQL using Managed Identities
Security is a significant topic today, and the ability to access a service requiring authentication without using an API key, password, or secret is a common request from those concerned about the security of a solution, which includes all of us. In today's digital landscape, cybersecurity threats are increasingly sophisticated and frequent, making it imperative to protect sensitive information. Traditional methods of authentication, such as passwords and API keys, are often susceptible to breaches and misuse. As a result, there is growing interest in alternative, more secure authentication methods. Azure S...
Building an AI App GraphQL Endpoint with SQL DB in Fabric
Welcome to an exciting, new workshop where we blend the power of AI with the versatility of GraphQL and SQL databases in Microsoft Fabric. This guide will walk you through creating a set of GraphQL RAG (Retrieval-Augmented Generation) application APIs, leveraging relational data and Azure OpenAI. What You’ll Learn You’ll dive into querying and managing data within SQL databases in Microsoft Fabric and mastering the art of building AI application endpoints. We’ll explore how to seamlessly integrate AI with relational data and enhance your queries with similarity searching. The Adventure Begins Here is the chap...
Database and AI: solutions for keeping embeddings updated
In the previous article of this series, it was discussed how embeddings can be quickly created from data already in Azure SQL. This is a useful starting point, but since data in a database changes frequently, a common question arises: “How can the vectors be kept updated whenever there is a change to the content from which they have been generated?” This article aims to address that question. Solutions to keep embeddings updated Several methods can be employed to ensure that embeddings are updated to reflect any modifications made to the content from which they are generated: This i...
External REST Endpoint Invocation in Azure SQL Managed Instance is now in Public Preview
External REST Endpoint Invocation is available in Azure SQL Managed Instance with the Always-up-to-date update policy configured. Call Azure Services such as functions, Azure OpenAI, event hubs, content safety and more! To enable this feature in Azure SQL Managed Instance, run the following code: To execute sp_configure to change a configuration option or to run the RECONFIGURE statement, a user must be granted the ALTER SETTINGS server-level permission. The ALTER SETTINGS permission is implicitly held by the sysadmin and serveradmin fixed server roles. Examples and sample code can be found here and a wo...
.NET Aspire and Data API builder with the Community Toolkit
Announcing .NET Aspire Integration with Data API builder (DAB) As engineers add components to their solution architecture, their development environments can become complex and difficult to replicate across teams and environments. Placing each service in a dedicated container simplifies the setup—but only if you're familiar with Docker. Enter .NET Aspire, a simple orchestration tool that replaces Docker’s complexity with the familiarity of C#. It’s supported in Visual Studio, Visual Studio Code, and Rider, offering built-in framework features, including SQL Server and Azure SQL Database support....
Azure Data Studio Retirement
We’re announcing the upcoming retirement of Azure Data Studio (ADS) on February 6, 2025, as we focus on delivering a modern, streamlined SQL development experience. ADS will remain supported until February 28, 2026, giving developers ample time to transition. This decision aligns with our commitment to simplifying SQL development by consolidating efforts on Visual Studio Code (VS Code) with the MSSQL extension, a powerful and versatile tool designed for modern developers. Why Retire Azure Data Studio? Azure Data Studio has been an essential tool for SQL developers, but evolving developer needs and the rise o...
Storing, querying and keeping embeddings updated: options and best practices
Embeddings and vectors are becoming common terms not only for engineers involved in AI-related activities but also for those using databases. Some common points of discussion that frequently arise among users familiar with vectors and embeddings include: Let’s tackle each one of these questions one by one starting from the very first. In the next blog posts I’ll discuss about the other questions. Quickly vectorize existing data This is a straightforward question. While the answer is often "it depends," in this case, there is a clear and direct solution: to efficiently vectorize data, batchi...
Stored Procedure Caching in Data API builder Now Supported
Announcing Procedure Cache Data API builder (DAB) has long supported Level 1 cache for tables and views. Level 1 is an in-memory cache that automatically stores frequent queries or slow-changing data in the API layer, bypassing several database queries. Today, Data API builder (DAB) also supports Level 1 cache for stored procedures. This is important. Minimizing long-running procedure calls can dramatically increase the number of concurrent calls your Data API can support. How does it get configured? The Data API builder (DAB) settings file configures cache at both the global level (under the runtime ...
Hot Reload in Data API builder Now Available
Announcing Hot Reload In a recent release, Data API builder (DAB) announced support for Hot Reload. This allows developers to modify the configuration file, save it and see the impact of those changes without restarting the engine. This tightens the loop, allowing developers to tune their implementation without waiting for needless tear down/set up operations. How is this useful? Getting your REST API just right is tricky. As you manipulate REST paths and settings, hit refresh in Swagger to see your changes and keep testing. Hot reload makes REST configuration faster and easier. Getting your GraphQL s...
Introducing Change Event Streaming: Join the Azure SQL Database Private Preview for Change Data Streaming
In a world where digital transformation is accelerating, the ability to integrate and process real-time data from diverse sources is crucial for success. Organizations today depend on timely insights to enhance decision-making, improve operations, and foster innovation. To meet this need, we’re thrilled to announce the private preview of Change Event Streaming (CES), a new functionality that lets you stream data changes directly from your Azure SQL Database into Azure Event Hubs. Starting now, you can apply to join this preview program. Participants will have the chance to test CES on Azure SQL Database and Az...
Improve the “R” in RAG and embrace Agentic RAG in Azure SQL
The RAG (Retrieval Augmented Generation) pattern, which is commonly discussed today, is based on the foundational idea that the retrieval part is done using vector search. This ensures that all the most relevant information available to answer the given question is returned and then fed to an LLM to generate the final answer. While vector search is great for its specific use case - semantic search, which is approximate by nature - it fails when it comes to searching for precise questions, like "show me the latest 10 code samples" as that request can - and should - be answered precisely without the need for vec...
Extending Regular Expressions (Regex) Support on Azure SQL Managed Instance (MI)
We are happy to announce the Private Preview of Regular Expressions (Regex) support on Azure SQL Managed Instance (MI). This new feature brings powerful text processing capabilities to your SQL queries, enabling you to perform complex pattern matching and data manipulation with ease. Regex support in Azure SQL The Regex feature in Azure SQL follows the POSIX standard and is compatible with the standard regex syntax and supports a variety of regex functions, such as REGEXP_LIKE, REGEXP_COUNT, REGEXP_INSTR, REGEXP_REPLACE, and REGEXP_SUBSTR. The feature also supports case sensitivity, character classes, quantifi...
SQL Server Native Vector Search for .NET Developers
It seems that the majority of developers naturally believe this field of software development belongs to mathematics and Python developers, who originally started building the first solutions. However, .NET and C# provide a great foundation for building almost any kind of application on any platform in a highly professional way. In this post, we will show, step by step, how to build GenAI solutions in C#/.NET that leverage SQL Server's native vector search capabilities. Introduction In the space of Generative AI, large language models offer different types of functionalities, often categorized as Complet...
Building a RAG-Based Smart Memory Application with Azure SQL Database
Project Mission The way people work and manage information is changing rapidly in our digital age. More and more people are struggling to keep track of all the online resources they use daily. They need a better way to save, organize, and retrieve important information from websites, articles, and other online sources. This is especially true for knowledge workers, researchers, and students who often need to quickly access and synthesize information from many different places. Project Goal The primary goal of our project is to develop My Smart Memory, a full-stack web application that enables users to save U...
Embedding models and dimensions: optimizing the performance to resource-usage ratio
Since the release of vector preview, we've been working with many customers that are building AI solution on Azure SQL and SQL Server and one of the most common questions is how to support high-dimensional data, for example more than 2000 dimensions per vector. In fact, at the moment, the vector type supports "only" up to 1998 dimensions for an embedding. One of the impressions that such limitation may give, is that you cannot use the latest and greatest embedding model offered by OpenAI, and also available in Azure, which is the text-3-embedding-large model, as it returns 3072 dimensions. Well, that's not the...
Azure SQL ❤️ Python!
I recently presented at Python Day 2024 on Langchain integration. I created a slide deck that I believe can be useful beyond just the session, so I wanted to share it here for everyone's benefit. The deck covers the most common topics for a Python developer: The slide deck, which I created using the Sli.dev SDK, so that slide themselves are available online in a very easy to access format, is available here: The session covers a lot more than what is in the deck. It was recorded and is available for everyone to view: https://www.youtube.com/watch?v=_Tfej--_4-Q&a...
Introducing the enhanced MSSQL Extension for Visual Studio Code
The MSSQL extension for Visual Studio Code is designed to support developers in building applications that use Azure SQL (including Azure SQL Database, Azure SQL Managed Instance, and SQL Server on Azure VMs), SQL Database in Fabric (Preview) or SQL Server as backend databases. With a comprehensive suite of features for connecting to databases, designing and managing database schemas, exploring database objects, executing queries, and visualizing query plans, this extension transforms the SQL development experience within VS Code. The latest enhancements to the MSSQL extension for Visual Studio Code are specific...
Announcing LangChain integration for your SQL-based AI applications
In today's data-driven world, the ability to seamlessly integrate various technologies is crucial for efficient data management and analysis. We’re excited to announce LangChain integration with Azure SQL Database and SQL database in Microsoft Fabric! LangChain, a powerful tool for building solutions with language models, can be effectively combined with these services to build AI-ready applications. What’s New? Native Vector Support: SQL Database and SQL database in Fabric now support native vector search capabilities. This new capability brings the power of vector search operations directly to your SQL...
LangChain Integration for Vector Support for SQL-based AI applications
LangChain Integration for Vector Support for Azure SQL and SQL database in Microsoft Fabric Microsoft SQL now supports native vector search capabilities in Azure SQL and SQL database in Microsoft Fabric. We also released the langchain-sqlserver package, enabling the management of SQL Server as a Vectorstore in LangChain. In this step-by-step tutorial, we will show you how to add generative AI features to your own applications with just a few lines of code using Azure SQL DB, LangChain, and LLMs. Our Example Dataset The Harry Potter series, written by J.K. Rowling, is a globally beloved collection of seven book...
Build AI apps faster and easier with SQL database in Fabric – now Public Preview!
The SQL Server and Azure SQL team has embarked on a mission to make building AI apps faster and easier than ever, announcing the Public Preview of SQL database in Microsoft Fabric. This new simple, autonomous and secure, and optimized for AI service will help you in the era of AI, where 1 billion new apps are estimated to be built in the next 5 years, and 87% of leaders believe AI will give their organizations a competitive edge. With operational databases coming to Fabric, Fabric is evolving from an analytics platform to a data platform and the data layer of the AI and Copilot stack. SQL database in Fabric ...
RAG with SQL Vector Store: A Low-Code/No-Code Approach using Azure Logic Apps
Data is at the heart of every AI application, and efficient data ingestion is critical for success. With over 1,400 enterprise connectors, Logic Apps offers unmatched access to a diverse range of systems, applications, and databases, whether hosted in the cloud or on-premises. These connectors give businesses the flexibility to keep their data where it resides while seamlessly powering AI experiences. By leveraging Azure Logic Apps' native capabilities, organizations can implement the Retrieval-Augmented Generation (RAG) pattern, enabling straightforward ingestion and retrieval of data from multiple sources to...
Exciting Announcement: Public Preview of Native Vector Support in Azure SQL Database!
Public Preview of Native Vector Support in Azure SQL Database We are excited to share that the dedicated vector data type in Azure SQL Database, which was previously available through the Early Adopter Preview, is now transitioning to Public Preview! As of today, the Vector data type and its associated functions are accessible to everyone, automatically and seamlessly. You can start using them immediately in any Azure SQL Database you currently have or will create in the future. Azure SQL MI will move to Public Preview in the next months: stay tuned for more details! SQL Database as a Vector Store: With th...
Soccer Analytics Copilot with Azure SQL and OpenAI
The Football (aka Soccer in US 😀) Analisys Copilot provides an intuitive interface for users to interact with complex football data without needing advanced technical skills. By utilizing natural language processing, users can ask questions and retrieve detailed insights from vast datasets, including competitions, matches, teams, players, and events. This makes data exploration accessible to analysts, coaches, and fans who may not be familiar with coding or database queries, enabling them to gain valuable information through simple conversations with the chatbot. Through this interactive platform, users ca...
The ultimate chatbot?
RAG - Retrieval Augmented Generation - is by far one of the most common patterns today as it enables the creation of chatbots that can chat on your own data, as I described in my previous "Retrieval Augmented Generation with Azure SQL" blog post. As soon as you start to use it excitement grows, as it provides a sort of a magical experience. Experience that unfortunately stops the moment you try to ask it question that requires the ability to extract data from a structured source, like a database, as RAG is great when dealing with unstructured data, like text. By integrating the RAG pattern alongside NL2SQL, wh...
Smart Resume Matching: Document RAG with Azure SQL DB & Document Intelligence
Hey Azure SQL enthusiasts! 👋 We had a hiring event last week, and as I was going through a stack of digital resumes, I thought, "There has to be an easier way to do this." That's when it hit me—why not use Azure SQL DB’s new vector data type to revolutionize our hiring process? Not only could we find the perfect candidate faster, but we could also identify key focus areas for the interview. It’s a win-win! So, buckle up because today, we’re diving into how Azure SQL DB’s vector capabilities can enable advanced resume matching. We’ll be using Azure Document Intelligence and Azure OpenAI to make this magic ha...
Build a chatbot on your own data in 1 hour with Azure SQL, Langchain and Chainlit
Chatbots are the hot topic lately, and now you can create them easily by downloading solutions like OpenWebUI, connect it to Ollama or any OpenAI compatible API, choose your favorite language model, and then run it. It just takes a few minutes and it's done. But building chatbots is not enough, you most likely want to build a chatbot on your own data. Luckly, the software ecosystem around AI and chatbot is growing every day, and today creating a chatbot that allow your users to chat with data stored in your database is very easy, thanks to libraries like LangChain, ChainLit and, of course, Azure SQL. To get...
EAP for Vector Support Refresh – Introducing Vector type
Latest update - 06 November 2024 Vector Support is now available as Public Preview! Read the announcement here: Public Preview of Native Vector Support in Azure SQL Database! Access to full documentation here: Vector functions. The new data type Not even 6 months ago we started the Early Adopter Preview vector data support in Azure SQL, and we got great feedback and a lot of enthusiasm about the feature. Developers are excited to be able to easily build AI-enabled solution using an enterprise ready, secure, scalable and proven platform like Azure SQL, without the need to move data outside the database for...
Vector Support EAP extended to Azure SQL MI
If you are looking forward to build AI-enabled applications on your own data, you'll be excited to know that the Early Adopter Preview announced for Azure SQL DB on native vector capabilities is now available also for those who have data stored in Azure SQL Managed Instance! Make sure to learn how to store and use vectors functions reading the original post here: Announcing EAP for Vector Support in Azure SQL Database and then fill out the participation form at the end of that post to ask to join the Early Adopter Preview. Azure SQL Managed Instance is designed for customers looking to migrate a large numbe...
Retrieval Augmented Generation with Azure SQL
Retrieval Augmented Generation, or RAG, is one of the hottest topics at the moment as it opens up the possibility of interacting with data using natural language, which is a long-time dream finally coming true. It is very likely that a lot of your data is already stored or will be stored in Azure SQL, so a common request is to have an example on how to apply the RAG pattern to your own data stored an Azure SQL database. This blog post is all about that. Let's start from the basics and make sure the RAG pattern is clearly understood. RAG Pattern 101 To make the explanation easy to understand, even if y...
Simplify development with Dev Container templates for Azure SQL Database
In today's fast-paced software development landscape, having a reliable and efficient local development setup is crucial. Dev Containers provide developers with a seamless way to build and test applications locally before deploying them to the cloud. We are announcing the Public Preview of Dev Container templates for Azure SQL Database. This release provides pre-configured development environments tailored for Azure SQL Database, making it easier for developers to integrate and work with Azure SQL Database in their projects. In this blog post, we'll explore these new development container templates, discuss th...
Similarity Search with FAISS and Azure SQL
In today’s data-driven world, finding similar items within large datasets is a common challenge. Whether it’s recommending products, identifying similar documents, or clustering data points, efficient similarity search is crucial. This blog post will explore how to leverage FAISS (Facebook AI Similarity Search) and Azure SQL to perform similarity searches on Wikipedia movie plots data. The blog will also cover sample code to help you get started. Check out Data exposed video for quick overview and follow along with the code sample. What is Faiss? FAISS (Facebook AI Similarity Search) is a library that allows d...
Building Course Registration Project with Azure SQL Database
This semester long project was completed by Master's students at Cornell University with mentorship from the Azure SQL database product team at Microsoft. Project Mission The purpose of this project is to design a high-fidelity university course registration system utilizing Microsoft Azure cloud services. Our target audience includes universities given that the intended target users are university students. The final result is a full-stack system consisting of the student frontend perspective and the backend Azure SQL database necessary to support this. Project Goals ...
Unleashing the Potential of Generative AI in Azure SQL Database
Generative AI is not just a technological advancement; it's a paradigm shift that is redefining the landscape of customer interaction. Azure SQL Database stands at the forefront of this revolution, offering unparalleled opportunities to harness the power of "your data" in crafting state-of-the-art applications. As we stand at the cusp of an AI renaissance, it's clear that AI-enabled applications are becoming the new norm, from personal devices to the vast expanse of the cloud. Yet, it's not the technology alone that sets you apart—it's how you leverage it with your unique datasets. Your data is the key to deli...
Announcing UNISTR and || operator in Azure SQL Database – preview
We are excited to announce that the UNISTR intrinsic function and ANSI SQL concatenation operator (||) are now available in public preview in Azure SQL Database. The UNISTR function allows you to escape Unicode characters, making it easier to work with international text. The ANSI SQL concatenation operator (||) provides a simple and intuitive way to combine characters or binary strings. These new features will enhance your ability to manipulate and work with text data. What is UNISTR function? The UNISTR function takes a text literal or an expression of characters and Unicode values, that resolves to characte...
Announcing EAP for Vector Support in Azure SQL Database
We are super excited to announce the Early Adopter Preview of Native Vector Support in Azure SQL Database and are currently accepting requests from customers who wish to participate. SQL beyond RDBMS Vector databases have gained a lot of prominence lately. These specialized repositories handle vector data, crucial for applications like semantic search, chatbots, and recommendation systems. However, a paradigm shift is underway: Why maintain a separate Vector database when Azure SQL Database can seamlessly accommodate vector embeddings? By integrating vector search into Azure SQL, you simplify applicat...
What’s a Vector Anyway?
It's a bit of an understatement to say that Artificial Intelligence (AI), and specifically Generative AI, is at the top of every announcement, news feed, article and discussion lately. Not just in technology, but everywhere. There are a lot of things you to learn to understand not just how to use AI, but how it works. One of those things is understanding Vectors. So just what is a vector? In simple terms, a vector is a mathematical object that has a magnitude (length) and a direction. You'll probably remember from math class as an arrow pointing from one point to another on a x, y, and possibly even a z graph ...
Coding at the Speed of Innovation: AI and more with Azure SQL Database
As Build 2024 approaches, the Azure SQL Database team is preparing a great line-up of product announcements. Innovation continues to be a big theme as we prepare to showcase exciting experiences powered by SQL data and generative AI. The ideal starting point for the new generation of AI-ready SQL apps is Azure SQL Database, the fully managed platform-as-a-service (PaaS) database engine that frees developers to focus on innovation. In this post, we recount a few recent announcements plus a free offer and new video resources that can help you get started innovating with AI and Azure SQL Database. Innovate at Hy...
Data API builder becomes Generally Available
Announcing Data API builder General Availability On May 15th, Data API builder becomes Generally Available. Data API builder for Azure SQL Databases – Generally Available It’s been a long road, getting from there to here. Nearly three years ago, Data API builder began as just a dream. How can we reduce the friction for developers wanting to access databases in their client applications? We created Data API builder to solve this, providing secure and feature-rich REST and GraphQL endpoints over databases with zero code. DAB is developer-oriented; it’s open-source and free, even for on-prem databases. ...
Private Preview for External REST Endpoint Invocation with Azure SQL Managed Instance
We have an exciting opportunity for customers and partners to use External REST Endpoint Invocation with Azure SQL Managed Instance in a private preview. What is Azure SQL Managed Instance? Azure SQL Managed Instance is a PaaS service that has near 100% compatibility with the latest Enterprise Edition SQL Server database engine, providing a native virtual network (VNet) implementation that addresses common security concerns, and a business model favorable to existing SQL Server customers. SQL Managed Instance allows existing SQL Server customers to lift and shift their on-premises applications to the cloud with...
Data API builder Version 0.11 Brings In-Memory Caching
Literally, I just said that! I have three daughters, and it's amazing how they ask me the same questions over and over. I don't mind answering them, but I sure wish they would either remember my answer or, at least, write it down. There's a measurable cognitive load with the context switching and staying consistent in my answers. And that's a good—though a little messy—segue into data caching. Data API builder can now relieve your database's burden with the new caching feature available to REST endpoints. Your database is good at joining, filtering, sorting, and projecting data. Two, ten, even a hundred t...
Vector Search Optimization via KMeans, Voronoi Cells and Inverted File Index (aka “Cell-Probing”)
In a previous article I already mentioned how vectors can be easily stored in Azure SQL already and how to calculate dot product and cosine distance using just T-SQL. In this article I will show how to improve the performance in vector search by using a technique that has many name but is really based on something very well know already: KMeans Clustering. As KMeans clustering is a compute intensive operation, this project uses SciKit-Learn library to perform the clustering and then stores the results in a SQL DB table. The results are then used to perform ANN search on the vector column in pure T-SQL. Vector...
Vanna.ai and Azure SQL Database
Vanna.ai and Microsoft SQL Vanna.ai, in partnership with Azure SQL Database Product Management, bring you a collaboration for using Vanna's natural language to SQL (NL2SQL) agent with the Azure SQL Database. How does Vanna.ai work? First, Vanna is an open-source Python RAG (Retrieval-Augmented Generation) framework for SQL generation/natural language to SQL (NL2SQL) and provides a fully hosted platform for application development. Get started for free here. (From the documentation) At its core, Vanna is a Python package that uses retrieval augmentation to help you generate accurate SQL queries for your d...
Introducing Regular Expression (Regex) Support in Azure SQL DB
We are pleased to announce the private preview of regular expressions (regex) support in Azure SQL Database. Regex is a powerful tool that allows you to search, manipulate, and validate text data in flexible ways. With regex support, you can enhance your SQL queries with pattern matching, extraction, replacement, and more. You can also combine them with other SQL functions and operators to create complex expressions and logic. This feature can help you to: The Regex feature in Azure SQL DB follows the POSIX standard and is compatible with the standard regex syntax and supports a variety of...
Empowering the SQLBits website with Azure SQL and Data API Builder
SQLBits is the biggest and most well-known data conference in UK and Europe. With several thousand people attending every year, and with more than 10 years of session recordings, it provides an amazing amount of knowledge to everyone who wants to learn anything around the Microsoft Data Platform. Be it on-premises, or on Azure, or the shiny new Fabric, SQLBits has something for you. In late 2023 the new SQLBits 2024 was unveiled, along with the updated website, during a very funny and engaging live event with the SQLBI folks. If you have missed the event, make sure to watch the recording here: Along with ...
Azure SQL Trigger Binding for Azure Functions goes GA
Azure SQL Database Engineering and Product Management would like to announce that Azure SQL Trigger Binding for Azure Functions is now generally available (GA). Catching Up As a quick refresher, the Azure SQL trigger uses SQL change tracking functionality to monitor a SQL table for changes and trigger a function when a row is created, updated, or deleted. It can be used in many scenarios such as change streaming from an Azure SQL database, participating in event-based architectures, as well as real time updating of web pages and applications. The GitHub samples repository is located here if you would like to tr...