Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Atualize uma definição de entidade existente no arquivo de configuração do construtor de API de Dados. Use este comando para ajustar metadados de origem, permissões, exposição (REST/GraphQL), políticas, cache, relações, mapeamentos e metadados descritivos para uma entidade existente.
Dica
Use dab add para criar novas entidades e dab update evoluí-las. Para gerenciar metadados de campo, use --fields.name com --fields.alias, --fields.descriptione --fields.primary-key.
Sintaxe
dab update <entity-name> [options]
Olhar rápido
| Opção | Resumo |
|---|---|
<entity-name> |
Argumento posicional necessário. Nome da entidade lógica. |
-s, --source |
Nome da tabela de origem, exibição ou procedimento armazenado. |
-m, --map |
Mapeamentos entre campos de banco de dados e nomes expostos. |
--permissions |
Função e ações em role:actions formato. |
--description |
Substitua a descrição da entidade. |
-c, --config |
Caminho para o arquivo de configuração. A resolução padrão se aplica se omitida. |
--help |
Exiba a tela de ajuda. |
--version |
Exibir informações de versão. |
Cache
| Opção | Resumo |
|---|---|
--cache.enabled |
Habilitar ou desabilitar o cache de entidade. |
--cache.ttl |
Tempo de vida útil do cache em segundos. |
Fields
| Opção | Resumo |
|---|---|
--fields.exclude |
Lista separada por vírgulas de campos excluídos. |
--fields.include |
Lista separada por vírgulas de campos incluídos (* = todos). |
Metadados de campos
| Opção | Resumo |
|---|---|
--fields.name |
Nome da coluna de banco de dados a ser descrita. |
--fields.alias |
Alias para o campo. |
--fields.description |
Descrição do campo. |
--fields.primary-key |
Defina esse campo como uma chave primária. |
GraphQL
| Opção | Resumo |
|---|---|
--graphql |
Exposição do GraphQL: false, , true, singularou singular:plural. |
--graphql.operation |
Somente procedimentos armazenados: query ou mutation (mutação padrão). |
Permissões e políticas
| Opção | Resumo |
|---|---|
--permissions |
role:actions para uma única função. Execute várias vezes para várias funções. |
--policy-database |
Filtro no estilo OData injetado na consulta de banco de dados. |
--policy-request |
Filtro de solicitação de pré-base. |
Relationships
| Opção | Resumo |
|---|---|
--relationship |
Nome da relação. Use com opções de relação. |
--cardinality |
Cardinalidade da relação: one ou many. |
--target.entity |
Nome da entidade de destino. |
--linking.object |
Vinculando objeto para muitos para muitos. |
--linking.source.fields |
Vinculando campos de objeto apontando para a origem. |
--linking.target.fields |
Vinculando campos de objeto apontando para o destino. |
--relationship.fields |
Mapeamentos de campo para relações diretas. |
REST
| Opção | Resumo |
|---|---|
--rest |
Exposição REST: false, trueou caminho personalizado. |
--rest.methods |
Somente procedimentos armazenados. Substitua verbos HTTP permitidos. |
Mapeamentos
| Opção | Resumo |
|---|---|
-m, --map |
Mapeamentos entre campos de banco de dados e nomes expostos. |
MCP
| Opção | Resumo |
|---|---|
--mcp.dml-tools |
Habilite ou desabilite as ferramentas DML do MCP para essa entidade. |
--mcp.custom-tool |
Habilitar a ferramenta personalizada MCP (somente procedimentos armazenados). |
Source
| Opção | Resumo |
|---|---|
-s, --source |
Nome do objeto de banco de dados subjacente. |
--source.type |
Tipo de origem: table, viewou stored-procedure. |
--source.params |
Valores de parâmetro padrão para procedimentos armazenados. |
--source.key-fields |
Campos de chave primária para exibições ou tabelas. |
Parâmetros (procedimentos armazenados)
| Opção | Resumo |
|---|---|
--parameters.name |
Lista separada por vírgulas de nomes de parâmetros. |
--parameters.description |
Lista separada por vírgulas de descrições de parâmetro. |
--parameters.required |
Lista separada por vírgulas de sinalizadores necessários. |
--parameters.default |
Lista separada por vírgulas de valores padrão. |
--cache.enabled
Habilite ou desabilite o cache para essa entidade.
Example
dab update \
Book \
--cache.enabled true
Configuração resultante
{
"entities": {
"Book": {
"cache": {}
}
}
}
Observação
Quando o cache está habilitado (o padrão), a CLI grava um objeto vazio cache . A "enabled" propriedade só aparece explicitamente quando definida como false.
--cache.ttl
Defina o tempo de vida útil do cache em segundos. Só será eficaz se o cache estiver habilitado.
Example
dab update \
Book \
--cache.ttl 600
Configuração resultante
{
"entities": {
"Book": {
"cache": {
"ttl-seconds": 600
}
}
}
}
Observação
O fornecimento de TTL (vida útil) quando o cache está desabilitado não tem efeito até que o cache esteja habilitado.
--description
Substitua a descrição da entidade.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Book \
--description "Updated description"
Configuração resultante
{
"entities": {
"Book": {
"description": "Updated description"
}
}
}
--fields.exclude
Lista separada por vírgulas de campos a serem excluídos.
Example
dab update \
Book \
--permissions "anonymous:read" \
--fields.exclude "internal_flag,secret_note"
Configuração resultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"fields": {
"exclude": [ "internal_flag", "secret_note" ]
}
}
]
}
]
}
}
}
--fields.include
Lista separada por vírgulas de campos a serem incluídos.
* inclui todos os campos. Substitui a lista de inclusões existente.
Example
dab update \
Book \
--permissions "anonymous:read" \
--fields.include "id,title,author"
Configuração resultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"fields": {
"exclude": [],
"include": [ "id", "title", "author" ]
}
}
]
}
]
}
}
}
--graphql
Controlar a exposição do GraphQL.
Example
dab update \
Book \
--graphql book:books
Configuração resultante
{
"entities": {
"Book": {
"graphql": {
"enabled": true,
"type": {
"singular": "book",
"plural": "books"
}
}
}
}
}
--graphql.operation
Somente procedimentos armazenados. Define o tipo de operação. O padrão é mutation.
Example
dab update \
RunReport \
--graphql.operation query
Configuração resultante
{
"entities": {
"RunReport": {
"graphql": {
"operation": "query"
}
}
}
}
Observação
O fornecimento de --graphql.operation tabelas ou exibições é ignorado.
--permissions
Adiciona ou atualiza permissões para uma única função e suas ações.
Você pode executar dab update várias vezes (uma vez por função) para adicionar várias funções.
Example
dab update \
Book \
--permissions "anonymous:read"
dab update \
Book \
--permissions "authenticated:create,read,update"
Configuração resultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read"
}
]
},
{
"role": "authenticated",
"actions": [
{ "action": "create" },
{ "action": "read" },
{ "action": "update" }
]
}
]
}
}
}
Observação
Se a função especificada já existir, suas ações serão atualizadas; caso contrário, a função será adicionada.
--policy-database
Filtro no estilo OData acrescentado à consulta de banco de dados.
Example
dab update \
Book \
--permissions "anonymous:read" \
--policy-database "region eq 'US'"
Configuração resultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"policy": {
"database": "region eq 'US'"
}
}
]
}
]
}
}
}
--policy-request
Política de nível de solicitação avaliada antes de atingir o banco de dados.
Example
dab update \
Book \
--permissions "anonymous:read" \
--policy-request "@claims.role == 'admin'"
Configuração resultante
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"policy": {
"request": "@claims.role == 'admin'"
}
}
]
}
]
}
}
}
--relationship
Defina ou atualize uma relação. Use com outras opções de relação.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
Configuração resultante
{
"entities": {
"User": {
"relationships": {
"profile": {
"cardinality": "one",
"target.entity": "Profile",
"source.fields": [ "id" ],
"target.fields": [ "user_id" ],
"linking.source.fields": [],
"linking.target.fields": []
}
}
}
}
}
--cardinality
Cardinalidade para a relação. Usar com o --relationship.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
--target.entity
Nome da entidade de destino para a relação. Usar com o --relationship.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
--linking.object
Somente muitos para muitos. Nome do objeto de banco de dados a ser usado como o objeto de vinculação.
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
Somente muitos para muitos. Lista separada por vírgulas de vinculação de campos de objeto apontando para a entidade de origem.
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
Somente muitos para muitos. Lista separada por vírgulas de vinculação de campos de objeto apontando para a entidade de destino.
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
Mapeamentos de campo separados por dois-pontos para relações diretas.
O --relationship.fields valor é uma lista separada por vírgulas de sourceField:targetField pares.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
Configuração resultante
{
"entities": {
"User": {
"relationships": {
"profile": {
"cardinality": "one",
"target.entity": "Profile",
"source.fields": [ "id" ],
"target.fields": [ "user_id" ],
"linking.source.fields": [],
"linking.target.fields": []
}
}
}
}
}
--rest
Controlar a exposição rest.
Example
dab update \
Book \
--rest BooksApi
Configuração resultante
{
"entities": {
"Book": {
"rest": {
"enabled": true,
"path": "/BooksApi"
}
}
}
}
--rest.methods
Somente procedimentos armazenados. Substitua os métodos HTTP permitidos. O padrão é POST.
Example
dab update \
RunReport \
--rest true \
--rest.methods GET,POST
Configuração resultante
{
"entities": {
"RunReport": {
"rest": {
"enabled": true,
"methods": [ "get", "post" ]
}
}
}
}
Observação
O fornecimento --rest.methods enquanto REST está desabilitado não tem efeito.
-s, --source
Atualize o objeto de banco de dados subjacente.
Example
dab update \
Book \
--source dbo.Books
Configuração resultante
{
"entities": {
"Book": {
"source": {
"object": "dbo.Books",
"type": "table"
}
}
}
}
--source.type
Altere o tipo de objeto de origem.
Observação
As exibições exigem --source.key-fields. Alterar para view sem especificar campos-chave produz um erro.
Example
dab update \
Book \
--source.type view \
--source.key-fields "id"
Configuração resultante
{
"entities": {
"Book": {
"source": {
"type": "view",
"object": "Book"
},
"fields": [
{
"name": "id",
"primary-key": true
}
]
}
}
}
--source.params
Somente procedimentos armazenados. Valores de parâmetro padrão como name:value pares.
Example
dab update \
RunReport \
--source.params "startDate:2024-01-01,endDate:2024-12-31"
Configuração resultante
{
"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
Especifique os campos de chave primária para exibições ou tabelas sem uma chave inferida.
Example
dab update \
Book \
--source.type view \
--source.key-fields "id"
Configuração resultante
{
"entities": {
"Book": {
"source": {
"type": "view",
"object": "Book"
},
"fields": [
{
"name": "id",
"primary-key": true
}
]
}
}
}
Observação
Os modos de exibição sempre exigem campos-chave. A --source.key-fields opção adiciona entradas à fields matriz com "primary-key": true.
-m, --map
Especifique mapeamentos entre nomes de coluna de banco de dados e nomes de campo REST/GraphQL expostos.
Example
dab update \
Book \
--map "id:bookId,title:bookTitle"
Configuração resultante
{
"entities": {
"Book": {
"fields": [
{
"name": "id",
"alias": "bookId",
"primary-key": false
},
{
"name": "title",
"alias": "bookTitle",
"primary-key": false
}
]
}
}
}
Observação
A --map opção cria entradas na fields matriz com o alias conjunto de propriedades.
--parameters.name
Somente procedimentos armazenados. Lista separada por vírgulas de nomes de parâmetros.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Dica
Para definir parâmetros de procedimento armazenado, use --parameters.name com --parameters.description, --parameters.requirede --parameters.default.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "StartDate,EndDate" \
--parameters.required "true,true" \
--parameters.description "Beginning of date range,End of date range"
Configuração resultante
{
"entities": {
"GetOrdersByDateRange": {
"source": {
"parameters": [
{
"name": "StartDate",
"description": "Beginning of date range",
"required": true
},
{
"name": "EndDate",
"description": "End of date range",
"required": true
}
]
}
}
}
}
--parameters.description
Somente procedimentos armazenados. Lista separada por vírgulas de descrições de parâmetro alinhadas a --parameters.name.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com 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
Somente procedimentos armazenados. Lista separada por vírgulas de true/false valores alinhados a --parameters.name.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com 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
Somente procedimentos armazenados. Lista separada por vírgulas de valores padrão alinhados a --parameters.name.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "CustomerID" \
--parameters.default "null"
--fields.name
Nome da coluna de banco de dados a ser descrita.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com 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"
Configuração resultante
{
"entities": {
"Products": {
"fields": [
{
"name": "Id",
"description": "Product Id",
"primary-key": true
}
]
}
}
}
--fields.alias
Alias para o campo. Use uma lista separada por vírgulas alinhada a --fields.name.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Dica
Use --fields.alias com --fields.name para definir nomes de campo expostos.
Example
dab update \
Products \
--fields.name "Id,Title" \
--fields.alias "product_id,product_title"
--fields.description
Descrição do campo. Use uma lista separada por vírgulas alinhada a --fields.name.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com 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
Sinalizador de chave primária para o campo. Use uma lista separada por vírgulas de true/false valores alinhados a --fields.name.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Dica
Use --fields.primary-key com --fields.name para definir campos de chave primária para exibições ou tabelas sem uma chave inferida.
Example
dab update \
SalesSummary \
--fields.name "year,region" \
--fields.primary-key "true,true"
Configuração resultante
{
"entities": {
"SalesSummary": {
"fields": [
{
"name": "year",
"primary-key": true
},
{
"name": "region",
"primary-key": true
}
]
}
}
}
--mcp.dml-tools
Habilite ou desabilite as ferramentas de DML do MCP (linguagem de manipulação de dados) para essa entidade. O padrão é true.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Book \
--mcp.dml-tools false
Configuração resultante
{
"entities": {
"Book": {
"mcp": {
"dml-tools": false
}
}
}
}
Observação
Quando --mcp.dml-tools for usado, defina mcp usando o formulário de objeto para que a configuração seja explícita.
--mcp.custom-tool
Somente procedimentos armazenados. Habilite a ferramenta personalizada MCP para essa entidade. O padrão é false.
Observação
Essa opção está disponível na 2.0.0-rc CLI. O Construtor de API de Dados 2.0 está atualmente em versão prévia. Instalar com dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
RunReport \
--mcp.custom-tool true
Configuração resultante
{
"entities": {
"RunReport": {
"mcp": {
"custom-tool": true
}
}
}
}
-c, --config
Caminho para o arquivo de configuração.
Example
dab update \
Book \
--description "Updated description" \
--config dab-config.json
--help
Exiba a tela de ajuda.
Example
dab update --help
--version
Exibir informações de versão.
Example
dab update --version
Importante
Alterar o tipo de origem pode invalidar outras propriedades. Por exemplo, as exibições sempre exigem campos-chave; os procedimentos armazenados não podem definir campos-chave.