Condividi tramite


Disponibilità delle funzionalità per Il generatore di API dati

Queste tabelle elencano le funzionalità disponibili in Data API Builder (DAB).

Versione del database

Database Abbreviation Min. Versione
SQL Server MSSQL Versione 2016
Database SQL di Microsoft Azure MSSQL N/D (PaaS)
Istanza SQL gestita di Azure MSSQL N/D (PaaS)
SQL Server nelle macchine virtuali Azure MSSQL Versione 2016
SQL Server abilitato per Arc MSSQL Versione 2016
Database SQL su Fabric MSSQL N/D (PaaS)
Azure Cosmos DB per il NoSQL COSMOSDB N/D (PaaS)
PostgreSQL PGSQL Versione 11
Database di Azure per PostgreSQL - Server flessibile PGSQL Versione 11
MySQL MySQL Versione 8
Server flessibile di Database di Azure per MySQL MySQL Versione 5.7
Azure Synapse Analytics (pool SQL dedicato) DWSQL¹ N/D (PaaS)

Livelli di isolamento delle transazioni predefiniti

Il generatore di API dati usa i livelli di isolamento delle transazioni predefiniti seguenti.

Tipo di database Livello di isolamento Altre informazioni
Microsoft SQL Lettura Committata Azure SQL
PostgreSQL Lettura Committata PostgreSQL
MySQL Lettura ripetibile MySQL

Ambienti cloud e hosting

Il generatore di API dati viene eseguito in qualsiasi ambiente con supporto per i contenitori. Di seguito sono riportate le destinazioni comuni di distribuzione cloud:

Ambiente Sostenuto
Microsoft Azure ✅ Sì
Amazon Web Services (AWS) ✅ Sì
Google Cloud Platform (GCP) ✅ Sì
Qualsiasi altro provider di servizi cloud ✅ Sì
On-premises ✅ Sì

GraphQL

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Impaginazione ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Throttling ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Filtri ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Aggregazione ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Ordinamento ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Selezione ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Tipo di query ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Tipo di mutazione ✅ Sì ⚠️ Parziale ✅ Sì ✅ Sì ✅ Sì
Multi-Mutation ✅ Sì ✖️ No ✖️ No ✖️ No ✖️ No
Advanced GroupBy ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Advanced Having ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Generazione dello schema ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Attributo schema (@model) ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Attributo schema (@authorize) ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Schema fornito dall'utente ✖️ No ✅ Sì ✖️ No ✖️ No ✖️ No
Subscription ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Nitro ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Intestazioni della cache ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Cache di livello 1: memoria ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Cache di livello 2: Redis ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì

Navigazione relazione GraphQL

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
One-To-Many/Query ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Uno-To-Many/mutazione ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
MoltiTo-Many/Query ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
MoltiTo-Many/ Mutazione ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Relazioni tra origini ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Join tra origini ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

REST

Feature MSSQL Cosmos² PGSQL MySQL DWSQL¹
PUT ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
POST ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
PATCH ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
DELETE ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
GET ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Impaginazione ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Tipo OData $Select ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Tipo OData $Filter ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Tipo OData $Count ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Tipo OData $OrderBy ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Tipo OData $First ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
$After (Paging cursore) ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Documento OpenAPI ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Interfaccia utente di Swagger ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
OpenAPI compatibile con le autorizzazioni ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Percorsi REST avanzati ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
PUT senza chiave e PATCH ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Intestazioni della cache ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Cache di livello 1: memoria ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Cache di livello 2: Redis ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
POCO-ready Payload ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
OpenAPIReference ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

Oggetti di database supportati

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Tables ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Views ✅ Sì ✖️ No ✅ Sì ✖️ No ✅ Sì
Procedure memorizzate ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Parametri proc ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Functions ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Collections ✖️ No ✅ Sì ✖️ No ✖️ No ✖️ No
Mapping dei campi ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì

Autorizzazioni delle entità

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Create ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
REad ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Update ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Delete ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Execute ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Includi campi ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Escludi campi ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì

Criteri database

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Create ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
REad ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Update ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Delete ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
Execute ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Criteri diSingle-Table ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Criteri per più tabelle ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Criteri di richiesta ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

Funzionalità di autenticazione

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
UAMI (Entra ID)⁴ ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
SAMI (Entra ID)⁴ ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Azure EasyAuth ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
On-Behalf-Of (OBO) ✅ Sì ✖️ No ✖️ No ✖️ No ✖️ No
Provider non autenticato ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Ereditarietà dei ruoli ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Sicurezza con chiave API ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No

Altre funzionalità

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Supporto JSON nativo ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Supporto XML nativo ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Supporto di vettori nativi ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
Configurazione automatica ✅ Sì ✖️ No ✖️ No ✖️ No ✖️ No
Compressione della risposta HTTP ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Application Insights ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Log Analytics ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Registrazione file ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Contesto sessione ✅ Sì ✖️ No ✖️ No ✖️ No ✖️ No
Più origini dati ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Join tra origini ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
OpenTelemetry ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Endpoint di integrità ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Livelli di log personalizzati ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Aspirare a .NET ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
MCP² ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì

MCP Server

Annotazioni

Le funzionalità del server MCP richiedono Generatore API dati versione 1.7 o successiva.

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
DML-tool: CREATE ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
DML-tool: READ ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
DML-tool: UPDATE ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
DML-tool: DELETE ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
DML-tool: EXECUTE ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
DML-tool: DESCRIBE ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Stored procedure come strumento ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Strumenti MCP personalizzati ✅ Sì ✖️ No ✖️ No ✖️ No ✅ Sì
Istruzioni server ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Metadati dell'oggetto ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Metadati dei campi ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Metadati dei parametri ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
READ: Paginazione ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
LEGGERE: $Select ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
LEGGERE: $Filter ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
LEGGERE: $Count ✖️ No ✖️ No ✖️ No ✖️ No ✖️ No
LEGGERE: $OrderBy ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
LEGGERE: $First ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì
LEGGERE: $After ✅ Sì ✖️ No ✅ Sì ✅ Sì ✅ Sì

Piattaforme di orchestrazione dei contenitori

Il generatore di API dati viene eseguito in qualsiasi piattaforma di orchestrazione o runtime del contenitore. Le piattaforme comuni includono:

Piattaforma Sostenuto
Azure Container Apps ✅ Sì
Istanze di Azure Container ✅ Sì
Il servizio Azure Kubernetes (AKS) ✅ Sì
AWS Elastic Container Service (ECS) ✅ Sì
Aws Elastic Kubernetes Service (EKS) ✅ Sì
Google Kubernetes Engine (GKE) ✅ Sì
Kubernetes (qualsiasi distribuzione) ✅ Sì
Docker ✅ Sì
Qualsiasi altro runtime del contenitore ✅ Sì

Servizi di distribuzione di Azure

Feature MSSQL Cosmos PGSQL MySQL DWSQL¹
Azure Container Apps ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Istanze di Azure Container ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Servizi Azure Kubernetes ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
App Web per contenitori di Azure ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Azure Red Hat OpenShift ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
App Azure Spring ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Azure Service Fabric ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì
Macchina virtuale di Azure ✅ Sì ✅ Sì ✅ Sì ✅ Sì ✅ Sì

Tipi di dati non supportati

Il generatore di API dati non supporta alcuni tipi di dati per ogni piattaforma di database. Queste limitazioni sono in genere dovute a vincoli di serializzazione o alla mancanza di supporto nativo nel driver di database sottostante.

Microsoft SQL

Tipo di dati Description
geography Dati geospaziali che rappresentano la superficie terrestre.
geometry Dati spaziali planari usando coordinate cartesiane.
hierarchyid Gestione dei dati gerarchica.
json Dati in formato JSON.
rowversion Controllo delle versioni delle righe per il controllo della concorrenza.
sql_variant Valori di vari tipi di dati supportati da SQL Server.
vector Dati vettoriali.
xml Dati in formato XML.

PostgreSQL

Tipo di dati Description
bytea Archiviazione di stringhe binarie.
date Date del calendario (anno, mese, giorno).
smalldatetime Archiviazione di data e ora meno precisa.
datetime2 Non nativo; in genere gestito da timestamp.
timestamptz Date e ore con fuso orario.
time Ora del giorno senza data.
localtime Ora corrente basata sull'orologio di sistema.

MySQL

Tipo di dati Description
UUID Identificatori univoci universalmente.
DATE Date del calendario.
SMALLDATETIME Archiviazione di data e ora meno precisa.
DATETIME2 Non nativo; in genere gestito da datetime.
DATETIMEOFFSET Date e ore con fuso orario.
TIME Ora del giorno senza data.
LOCALTIME Ora corrente basata sull'orologio di sistema.

Azure Cosmos DB per il NoSQL

Azure Cosmos DB per NoSQL è indipendente dallo schema, quindi le restrizioni del tipo di dati non si applicano allo stesso modo dei database relazionali.

Note a piè di pagina

¹ DWSQL riflette il supporto solo per il pool SQL dedicato. Il pool SQL serverless non è supportato.

² Cosmos è supportato in DAB tramite GraphQL. DAB non genera endpoint REST per Cosmos perché l'API per NoSQL fornisce un'API REST nativa. Per altre informazioni, vedere Azure Cosmos DB: Informazioni di riferimento sull'API REST.

McP (Model Context Protocol) è una funzionalità a livello di endpoint, non specifica del database.

⁴ Il supporto dell'identità gestita usa Azure DefaultAzureCredential, che supporta sia le identità gestite System-Assigned (SAMI) che User-Assigned (UAMI). UAMI richiede l'impostazione della AZURE_CLIENT_ID variabile di ambiente.

⚠️ Parziale per le mutazioni di Cosmos DB significa che sono supportate operazioni di creazione, aggiornamento ed eliminazione di base, ma non tutti i tipi di mutazione (ad esempio multi-mutazione) sono disponibili.