Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Commande
Mettez à jour une définition d’entité existante dans le fichier de configuration du générateur d’API de données. Utilisez cette commande pour ajuster les métadonnées sources, les autorisations, l’exposition (REST/GraphQL), les stratégies, la mise en cache, les relations, les mappages et les métadonnées descriptives pour une entité existante.
Conseil / Astuce
Permet dab add de créer de nouvelles entités et dab update de les faire évoluer. Pour gérer les métadonnées de champ, utilisez --fields.name avec --fields.alias, --fields.descriptionet --fields.primary-key.
Syntaxe
dab update <entity-name> [options]
Aperçu rapide
| Choix | Résumé |
|---|---|
<entity-name> |
Argument positionnel obligatoire. Nom de l’entité logique. |
-s, --source |
Nom de la table source, de la vue ou de la procédure stockée. |
-m, --map |
Mappages entre les champs de base de données et les noms exposés. |
--permissions |
Rôle et actions au role:actions format. |
--description |
Remplacez la description de l’entité. |
-c, --config |
Chemin d’accès au fichier de configuration. La résolution par défaut s’applique si elle est omise. |
--help |
Affichez l’écran d’aide. |
--version |
Affichez les informations de version. |
Cache
| Choix | Résumé |
|---|---|
--cache.enabled |
Activez ou désactivez la mise en cache d’entité. |
--cache.ttl |
Durée de vie du cache en secondes. |
Fields
| Choix | Résumé |
|---|---|
--fields.exclude |
Liste séparée par des virgules de champs exclus. |
--fields.include |
Liste séparée par des virgules des champs inclus (* = all). |
Métadonnées de champs
| Choix | Résumé |
|---|---|
--fields.name |
Nom de la colonne de base de données à décrire. |
--fields.alias |
Alias du champ. |
--fields.description |
Description du champ. |
--fields.primary-key |
Définissez ce champ comme clé primaire. |
GraphQL
| Choix | Résumé |
|---|---|
--graphql |
Exposition GraphQL : false, , truesingularou singular:plural. |
--graphql.operation |
Procédures stockées uniquement : query ou mutation (mutation par défaut). |
Autorisations et stratégies
| Choix | Résumé |
|---|---|
--permissions |
role:actions pour un seul rôle. Exécutez plusieurs fois pour plusieurs rôles. |
--policy-database |
Filtre de style OData injecté dans la requête de base de données. |
--policy-request |
Filtre de requête Predatabase. |
Relations interpersonnelles
| Choix | Résumé |
|---|---|
--relationship |
Nom de la relation. Utiliser avec les options de relation. |
--cardinality |
Cardinalité de relation : one ou many. |
--target.entity |
Nom de l’entité cible. |
--linking.object |
Objet de liaison pour plusieurs-à-plusieurs. |
--linking.source.fields |
Liaison de champs d’objet pointant vers la source. |
--linking.target.fields |
Liaison de champs d’objet pointant vers la cible. |
--relationship.fields |
Mappages de champs pour les relations directes. |
REST
| Choix | Résumé |
|---|---|
--rest |
Exposition REST : false, trueou chemin personnalisé. |
--rest.methods |
Procédures stockées uniquement. Remplacez les verbes HTTP autorisés. |
Correspondances
| Choix | Résumé |
|---|---|
-m, --map |
Mappages entre les champs de base de données et les noms exposés. |
MCP
| Choix | Résumé |
|---|---|
--mcp.dml-tools |
Activez ou désactivez les outils DML MCP pour cette entité. |
--mcp.custom-tool |
Activez l’outil personnalisé MCP (procédures stockées uniquement). |
Origine
| Choix | Résumé |
|---|---|
-s, --source |
Nom de l’objet de base de données sous-jacent. |
--source.type |
Type de source : table, viewou stored-procedure. |
--source.params |
Valeurs de paramètre par défaut pour les procédures stockées. |
--source.key-fields |
Champ(s) de clé primaire pour les vues ou les tables. |
Paramètres (procédures stockées)
| Choix | Résumé |
|---|---|
--parameters.name |
Liste séparée par des virgules des noms de paramètres. |
--parameters.description |
Liste séparée par des virgules des descriptions de paramètres. |
--parameters.required |
Liste séparée par des virgules des indicateurs requis. |
--parameters.default |
Liste séparée par des virgules des valeurs par défaut. |
--cache.enabled
Activez ou désactivez la mise en cache pour cette entité.
Example
dab update \
Book \
--cache.enabled true
Configuration résultante
{
"entities": {
"Book": {
"cache": {}
}
}
}
Note
Lorsque la mise en cache est activée (valeur par défaut), l’interface CLI écrit un objet vide cache . La "enabled" propriété apparaît uniquement explicitement lorsqu’elle est définie sur false.
--cache.ttl
Définissez la durée de vie du cache en secondes. Effective uniquement si la mise en cache est activée.
Example
dab update \
Book \
--cache.ttl 600
Configuration résultante
{
"entities": {
"Book": {
"cache": {
"ttl-seconds": 600
}
}
}
}
Note
Fournir la durée de vie (durée de vie) lorsque le cache est désactivé n’a aucun effet tant que la mise en cache n’est pas activée.
--description
Remplacez la description de l’entité.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Book \
--description "Updated description"
Configuration résultante
{
"entities": {
"Book": {
"description": "Updated description"
}
}
}
--fields.exclude
Liste séparée par des virgules des champs à exclure.
Example
dab update \
Book \
--permissions "anonymous:read" \
--fields.exclude "internal_flag,secret_note"
Configuration résultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"fields": {
"exclude": [ "internal_flag", "secret_note" ]
}
}
]
}
]
}
}
}
--fields.include
Liste de champs séparés par des virgules à inclure.
* inclut tous les champs. Remplace la liste include existante.
Example
dab update \
Book \
--permissions "anonymous:read" \
--fields.include "id,title,author"
Configuration résultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"fields": {
"exclude": [],
"include": [ "id", "title", "author" ]
}
}
]
}
]
}
}
}
--graphql
Contrôler l’exposition GraphQL.
Example
dab update \
Book \
--graphql book:books
Configuration résultante
{
"entities": {
"Book": {
"graphql": {
"enabled": true,
"type": {
"singular": "book",
"plural": "books"
}
}
}
}
}
--graphql.operation
Procédures stockées uniquement. Définit le type d’opération. La valeur par défaut est mutation.
Example
dab update \
RunReport \
--graphql.operation query
Configuration résultante
{
"entities": {
"RunReport": {
"graphql": {
"operation": "query"
}
}
}
}
Note
La fourniture de --graphql.operation tables ou de vues est ignorée.
--permissions
Ajoute ou met à jour des autorisations pour un rôle unique et ses actions.
Vous pouvez exécuter dab update plusieurs fois (une fois par rôle) pour ajouter plusieurs rôles.
Example
dab update \
Book \
--permissions "anonymous:read"
dab update \
Book \
--permissions "authenticated:create,read,update"
Configuration résultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read"
}
]
},
{
"role": "authenticated",
"actions": [
{ "action": "create" },
{ "action": "read" },
{ "action": "update" }
]
}
]
}
}
}
Note
Si le rôle spécifié existe déjà, ses actions sont mises à jour ; sinon, le rôle est ajouté.
--policy-database
Filtre de style OData ajouté à la requête de base de données.
Example
dab update \
Book \
--permissions "anonymous:read" \
--policy-database "region eq 'US'"
Configuration résultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"policy": {
"database": "region eq 'US'"
}
}
]
}
]
}
}
}
--policy-request
Stratégie au niveau de la requête évaluée avant d’atteindre la base de données.
Example
dab update \
Book \
--permissions "anonymous:read" \
--policy-request "@claims.role == 'admin'"
Configuration résultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"policy": {
"request": "@claims.role == 'admin'"
}
}
]
}
]
}
}
}
--relationship
Définissez ou mettez à jour une relation. Utiliser avec d’autres options de relation.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
Configuration résultante
{
"entities": {
"User": {
"relationships": {
"profile": {
"cardinality": "one",
"target.entity": "Profile",
"source.fields": [ "id" ],
"target.fields": [ "user_id" ],
"linking.source.fields": [],
"linking.target.fields": []
}
}
}
}
}
--cardinality
Cardinalité pour la relation. Utiliser avec --relationship.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
--target.entity
Nom de l’entité cible pour la relation. Utiliser avec --relationship.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
--linking.object
Plusieurs-à-plusieurs uniquement. Nom de l’objet de base de données à utiliser comme objet de liaison.
Example
dab update \
Book \
--relationship books_authors \
--target.entity Author \
--cardinality many \
--relationship.fields "id:id" \
--linking.object dbo.books_authors \
--linking.source.fields book_id \
--linking.target.fields author_id
--linking.source.fields
Plusieurs-à-plusieurs uniquement. Liste séparée par des virgules de liaison de champs d’objet pointant vers l’entité source.
Example
dab update \
Book \
--relationship books_authors \
--target.entity Author \
--cardinality many \
--relationship.fields "id:id" \
--linking.object dbo.books_authors \
--linking.source.fields book_id \
--linking.target.fields author_id
--linking.target.fields
Plusieurs-à-plusieurs uniquement. Liste séparée par des virgules de liaison de champs d’objet pointant vers l’entité cible.
Example
dab update \
Book \
--relationship books_authors \
--target.entity Author \
--cardinality many \
--relationship.fields "id:id" \
--linking.object dbo.books_authors \
--linking.source.fields book_id \
--linking.target.fields author_id
--relationship.fields
Mappages de champs séparés par des points pour les relations directes.
La --relationship.fields valeur est une liste séparée par des virgules de sourceField:targetField paires.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
Configuration résultante
{
"entities": {
"User": {
"relationships": {
"profile": {
"cardinality": "one",
"target.entity": "Profile",
"source.fields": [ "id" ],
"target.fields": [ "user_id" ],
"linking.source.fields": [],
"linking.target.fields": []
}
}
}
}
}
--rest
Contrôler l’exposition REST.
Example
dab update \
Book \
--rest BooksApi
Configuration résultante
{
"entities": {
"Book": {
"rest": {
"enabled": true,
"path": "/BooksApi"
}
}
}
}
--rest.methods
Procédures stockées uniquement. Remplacez les méthodes HTTP autorisées. La valeur par défaut est POST.
Example
dab update \
RunReport \
--rest true \
--rest.methods GET,POST
Configuration résultante
{
"entities": {
"RunReport": {
"rest": {
"enabled": true,
"methods": [ "get", "post" ]
}
}
}
}
Note
L’approvisionnement --rest.methods pendant que REST est désactivé n’a aucun effet.
-s, --source
Mettez à jour l’objet de base de données sous-jacent.
Example
dab update \
Book \
--source dbo.Books
Configuration résultante
{
"entities": {
"Book": {
"source": {
"object": "dbo.Books",
"type": "table"
}
}
}
}
--source.type
Modifiez le type d’objet source.
Note
Les vues nécessitent --source.key-fields. La modification sans view spécifier de champs clés génère une erreur.
Example
dab update \
Book \
--source.type view \
--source.key-fields "id"
Configuration résultante
{
"entities": {
"Book": {
"source": {
"type": "view",
"object": "Book"
},
"fields": [
{
"name": "id",
"primary-key": true
}
]
}
}
}
--source.params
Procédures stockées uniquement. Valeurs de paramètre par défaut en tant que name:value paires.
Example
dab update \
RunReport \
--source.params "startDate:2024-01-01,endDate:2024-12-31"
Configuration résultante
{
"entities": {
"RunReport": {
"source": {
"type": "stored-procedure",
"parameters": [
{
"name": "startDate",
"required": false,
"default": "2024-01-01"
},
{
"name": "endDate",
"required": false,
"default": "2024-12-31"
}
]
}
}
}
}
--source.key-fields
Spécifiez les champs de clé primaire pour les vues ou les tables sans clé déduite.
Example
dab update \
Book \
--source.type view \
--source.key-fields "id"
Configuration résultante
{
"entities": {
"Book": {
"source": {
"type": "view",
"object": "Book"
},
"fields": [
{
"name": "id",
"primary-key": true
}
]
}
}
}
Note
Les vues nécessitent toujours des champs clés. L’option --source.key-fields ajoute des entrées au fields tableau avec "primary-key": true.
-m, --map
Spécifiez des mappages entre les noms de colonnes de base de données et les noms de champs REST/GraphQL exposés.
Example
dab update \
Book \
--map "id:bookId,title:bookTitle"
Configuration résultante
{
"entities": {
"Book": {
"fields": [
{
"name": "id",
"alias": "bookId",
"primary-key": false
},
{
"name": "title",
"alias": "bookTitle",
"primary-key": false
}
]
}
}
}
Note
L’option --map crée des entrées dans le fields tableau avec le jeu de alias propriétés.
--parameters.name
Procédures stockées uniquement. Liste séparée par des virgules des noms de paramètres.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Conseil / Astuce
Pour définir des paramètres de procédure stockée, utilisez --parameters.name avec --parameters.description, --parameters.requiredet --parameters.default.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "StartDate,EndDate" \
--parameters.required "true,true" \
--parameters.description "Beginning of date range,End of date range"
Configuration résultante
{
"entities": {
"GetOrdersByDateRange": {
"source": {
"parameters": [
{
"name": "StartDate",
"description": "Beginning of date range",
"required": true
},
{
"name": "EndDate",
"description": "End of date range",
"required": true
}
]
}
}
}
}
--parameters.description
Procédures stockées uniquement. Liste séparée par des virgules des descriptions de paramètres alignées sur --parameters.name.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "StartDate,EndDate" \
--parameters.description "Beginning of date range,End of date range"
--parameters.required
Procédures stockées uniquement. Liste séparée par des virgules des true/false valeurs alignées sur --parameters.name.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "StartDate,EndDate" \
--parameters.required "true,true"
--parameters.default
Procédures stockées uniquement. Liste séparée par des virgules des valeurs par défaut alignées sur --parameters.name.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "CustomerID" \
--parameters.default "null"
--fields.name
Nom de la colonne de base de données à décrire.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Products \
--fields.name Id \
--fields.primary-key true \
--fields.description "Product Id"
Configuration résultante
{
"entities": {
"Products": {
"fields": [
{
"name": "Id",
"description": "Product Id",
"primary-key": true
}
]
}
}
}
--fields.alias
Alias du champ. Utilisez une liste séparée par des virgules alignée sur --fields.name.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Conseil / Astuce
Utilisez-la --fields.alias--fields.name pour définir des noms de champs exposés.
Example
dab update \
Products \
--fields.name "Id,Title" \
--fields.alias "product_id,product_title"
--fields.description
Description du champ. Utilisez une liste séparée par des virgules alignée sur --fields.name.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Products \
--fields.name Id \
--fields.description "Product Id"
--fields.primary-key
Indicateur de clé primaire pour le champ. Utilisez une liste séparée par des virgules de true/false valeurs alignées sur --fields.name.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Conseil / Astuce
Utilisez cette --fields.primary-key option --fields.name pour définir des champs de clé primaire pour les vues ou les tables sans clé déduite.
Example
dab update \
SalesSummary \
--fields.name "year,region" \
--fields.primary-key "true,true"
Configuration résultante
{
"entities": {
"SalesSummary": {
"fields": [
{
"name": "year",
"primary-key": true
},
{
"name": "region",
"primary-key": true
}
]
}
}
}
--mcp.dml-tools
Activez ou désactivez les outils MCP DML (langage de manipulation des données) pour cette entité. La valeur par défaut est true.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Book \
--mcp.dml-tools false
Configuration résultante
{
"entities": {
"Book": {
"mcp": {
"dml-tools": false
}
}
}
}
Note
Quand --mcp.dml-tools elle est utilisée, définissez mcp à l’aide d’un formulaire objet afin que la configuration soit explicite.
--mcp.custom-tool
Procédures stockées uniquement. Activez l’outil personnalisé MCP pour cette entité. La valeur par défaut est false.
Note
Cette option est disponible dans l’interface 2.0.0-rc CLI. Data API Builder 2.0 est actuellement en préversion. Installer avec dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
RunReport \
--mcp.custom-tool true
Configuration résultante
{
"entities": {
"RunReport": {
"mcp": {
"custom-tool": true
}
}
}
}
-c, --config
Chemin d’accès au fichier de configuration.
Example
dab update \
Book \
--description "Updated description" \
--config dab-config.json
--help
Affichez l’écran d’aide.
Example
dab update --help
--version
Affichez les informations de version.
Example
dab update --version
Important
La modification du type de source peut invalider d’autres propriétés. Par exemple, les vues nécessitent toujours des champs clés ; les procédures stockées ne peuvent pas définir de champs clés.