update komut

Veri API oluşturucusu yapılandırma dosyasında var olan bir varlık tanımını güncelleştirin. Var olan bir varlığın kaynak meta verilerini, izinlerini, pozlamasını (REST/GraphQL), ilkeleri, önbelleğe almayı, ilişkileri, eşlemeleri ve açıklayıcı meta verileri ayarlamak için bu komutu kullanın.

İpucu

Yeni varlıklar oluşturmak ve dab add bunları geliştirmek için kullanındab update. Alan meta verilerini yönetmek için , --fields.nameve --fields.aliasile --fields.descriptionkullanın--fields.primary-key.

Sözdizimi

dab update <entity-name> [options]

Hızlı bakış

Seçenek Özet
<entity-name> Gerekli konumsal bağımsız değişken. Mantıksal varlık adı.
-s, --source Kaynak tablonun, görünümün veya saklı yordamın adı.
-m, --map Veritabanı alanları ve kullanıma sunulan adlar arasındaki eşlemeler.
--permissions Biçimdeki role:actions rol ve eylemler.
--description Varlık açıklamasını değiştirin.
-c, --config Yapılandırma dosyasının yolu. Atlanırsa varsayılan çözünürlük uygulanır.
--help Yardım ekranını görüntüleyin.
--version Sürüm bilgilerini görüntüleme.

Önbellek

Seçenek Özet
--cache.enabled Varlık önbelleğe almayı etkinleştirin veya devre dışı bırakın.
--cache.ttl Yaşam süresini saniyeler içinde önbelleğe alın.

Fields

Seçenek Özet
--fields.exclude Dışlanan alanların virgülle ayrılmış listesi.
--fields.include Eklenen alanların virgülle ayrılmış listesi (* = tümü).

Alanlar meta verileri

Seçenek Özet
--fields.name Açıklanacak veritabanı sütununun adı.
--fields.alias Alanın diğer adı.
--fields.description Alanın açıklaması.
--fields.primary-key Bu alanı birincil anahtar olarak ayarlayın.

GraphQL

Seçenek Özet
--graphql GraphQL pozlaması: false, true, singularveya singular:plural.
--graphql.operation Yalnızca saklı yordamlar: query veya mutation (varsayılan mutasyon).

İzinler ve İlkeler

Seçenek Özet
--permissions role:actions tek bir rol için. Birden çok rol için birden çok kez çalıştırın.
--policy-database Veritabanı sorgusuna eklenen OData stili filtre.
--policy-request Veri tabanı öncesi istek filtresi.

Ilişki

Seçenek Özet
--relationship İlişki adı. İlişki seçenekleriyle kullanın.
--cardinality İlişki kardinalitesi: one veya many.
--target.entity Hedef varlık adı.
--linking.object Çoka çok için nesne bağlama.
--linking.source.fields Kaynağa işaret eden nesne alanlarını bağlama.
--linking.target.fields Hedefe işaret eden nesne alanlarını bağlama.
--relationship.fields Doğrudan ilişkiler için alan eşlemeleri.

REST

Seçenek Özet
--rest REST pozlaması: false, trueveya özel yol.
--rest.methods Yalnızca saklı yordamlar. İzin verilen HTTP fiillerini değiştirin.

Eşleştirmeler

Seçenek Özet
-m, --map Veritabanı alanları ve kullanıma sunulan adlar arasındaki eşlemeler.

MCP

Seçenek Özet
--mcp.dml-tools Bu varlık için MCP DML araçlarını etkinleştirin veya devre dışı bırakın.
--mcp.custom-tool MCP özel aracını etkinleştirin (yalnızca saklı yordamlar).

Kaynak

Seçenek Özet
-s, --source Temel alınan veritabanı nesne adı.
--source.type Kaynak türü: table, viewveya stored-procedure.
--source.params Saklı yordamlar için varsayılan parametre değerleri.
--source.key-fields Görünümler veya tablolar için birincil anahtar alanı.

Parametreler (saklı yordamlar)

Seçenek Özet
--parameters.name Parametre adlarının virgülle ayrılmış listesi.
--parameters.description Parametre açıklamalarının virgülle ayrılmış listesi.
--parameters.required Gerekli bayrakların virgülle ayrılmış listesi.
--parameters.default Varsayılan değerlerin virgülle ayrılmış listesi.

--cache.enabled

Bu varlık için önbelleğe almayı etkinleştirin veya devre dışı bırakın.

Example

dab update \
  Book \
  --cache.enabled true

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "cache": {}
    }
  }
}

Uyarı

Önbelleğe alma etkinleştirildiğinde (varsayılan), CLI boş cache bir nesne yazar. "enabled" özelliği yalnızca olarak ayarlandığında falseaçıkça görünür.

--cache.ttl

Önbellek yaşam süresini saniyeler içinde ayarlayın. Yalnızca önbelleğe alma etkinse geçerlidir.

Example

dab update \
  Book \
  --cache.ttl 600

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "cache": {
        "ttl-seconds": 600
      }
    }
  }
}

Uyarı

Önbellek devre dışı bırakıldığında TTL (yaşam süresi) sağlamanın, önbelleğe alma etkinleştirilene kadar hiçbir etkisi olmaz.

--description

Varlık açıklamasını değiştirin.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.

Example

dab update \
  Book \
  --description "Updated description"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "description": "Updated description"
    }
  }
}

--fields.exclude

Hariç tutulacak alanların virgülle ayrılmış listesi.

Example

dab update \
  Book \
  --permissions "anonymous:read" \
  --fields.exclude "internal_flag,secret_note"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "permissions": [
        {
          "role": "anonymous",
          "actions": [
            {
              "action": "read",
              "fields": {
                "exclude": [ "internal_flag", "secret_note" ]
              }
            }
          ]
        }
      ]
    }
  }
}

--fields.include

Eklenecek alanların virgülle ayrılmış listesi. * tüm alanları içerir. Var olan ekleme listesini değiştirir.

Example

dab update \
  Book \
  --permissions "anonymous:read" \
  --fields.include "id,title,author"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "permissions": [
        {
          "role": "anonymous",
          "actions": [
            {
              "action": "read",
              "fields": {
                "exclude": [],
                "include": [ "id", "title", "author" ]
              }
            }
          ]
        }
      ]
    }
  }
}

--graphql

GraphQL pozlamayı denetleme.

Example

dab update \
  Book \
  --graphql book:books

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "graphql": {
        "enabled": true,
        "type": {
          "singular": "book",
          "plural": "books"
        }
      }
    }
  }
}

--graphql.operation

Yalnızca saklı yordamlar. İşlem türünü ayarlar. Varsayılan mutation değeridir.

Example

dab update \
  RunReport \
  --graphql.operation query

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "RunReport": {
      "graphql": {
        "operation": "query"
      }
    }
  }
}

Uyarı

Tablolar veya görünümler için sağlama --graphql.operation yoksayılır.

--permissions

Tek bir rol ve eylemleri için izinleri ekler veya güncelleştirir.

Birden çok rol eklemek için birden çok kez (rol başına bir kez) çalıştırabilirsiniz dab update .

Example

dab update \
  Book \
  --permissions "anonymous:read"

dab update \
  Book \
  --permissions "authenticated:create,read,update"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "permissions": [
        {
          "role": "anonymous",
          "actions": [
            {
              "action": "read"
            }
          ]
        },
        {
          "role": "authenticated",
          "actions": [
            { "action": "create" },
            { "action": "read" },
            { "action": "update" }
          ]
        }
      ]
    }
  }
}

Uyarı

Belirtilen rol zaten varsa, eylemleri güncelleştirilir; aksi takdirde rol eklenir.

--policy-database

Veritabanı sorgusuna eklenen OData stili filtre.

Example

dab update \
  Book \
  --permissions "anonymous:read" \
  --policy-database "region eq 'US'"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "permissions": [
        {
          "role": "anonymous",
          "actions": [
            {
              "action": "read",
              "policy": {
                "database": "region eq 'US'"
              }
            }
          ]
        }
      ]
    }
  }
}

--policy-request

veritabanına erişmeden önce istek düzeyi ilkesi değerlendirildi.

Example

dab update \
  Book \
  --permissions "anonymous:read" \
  --policy-request "@claims.role == 'admin'"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "permissions": [
        {
          "role": "anonymous",
          "actions": [
            {
              "action": "read",
              "policy": {
                "request": "@claims.role == 'admin'"
              }
            }
          ]
        }
      ]
    }
  }
}

--relationship

İlişki tanımlama veya güncelleştirme. Diğer ilişki seçenekleriyle kullanın.

Example

dab update \
  User \
  --relationship profile \
  --target.entity Profile \
  --cardinality one \
  --relationship.fields "id:user_id"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "User": {
      "relationships": {
        "profile": {
          "cardinality": "one",
          "target.entity": "Profile",
          "source.fields": [ "id" ],
          "target.fields": [ "user_id" ],
          "linking.source.fields": [],
          "linking.target.fields": []
        }
      }
    }
  }
}

--cardinality

İlişki için kardinalite. ile kullanın --relationship.

Example

dab update \
  User \
  --relationship profile \
  --target.entity Profile \
  --cardinality one \
  --relationship.fields "id:user_id"

--target.entity

İlişki için hedef varlık adı. ile kullanın --relationship.

Example

dab update \
  User \
  --relationship profile \
  --target.entity Profile \
  --cardinality one \
  --relationship.fields "id:user_id"

--linking.object

Yalnızca çoka çok. Bağlantı nesnesi olarak kullanılacak veritabanı nesnesinin adı.

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

Yalnızca çoka çok. Kaynak varlığa işaret eden nesne alanlarının virgülle ayrılmış listesi.

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

Yalnızca çoka çok. Hedef varlığa işaret eden nesne alanlarını bağlamanın virgülle ayrılmış listesi.

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

Doğrudan ilişkiler için iki nokta üst üste ayrılmış alan eşlemeleri.

--relationship.fields Değer, virgülle ayrılmış çiftler listesidirsourceField:targetField.

Example

dab update \
  User \
  --relationship profile \
  --target.entity Profile \
  --cardinality one \
  --relationship.fields "id:user_id"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "User": {
      "relationships": {
        "profile": {
          "cardinality": "one",
          "target.entity": "Profile",
          "source.fields": [ "id" ],
          "target.fields": [ "user_id" ],
          "linking.source.fields": [],
          "linking.target.fields": []
        }
      }
    }
  }
}

--rest

REST pozlamayı kontrol edin.

Example

dab update \
  Book \
  --rest BooksApi

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "rest": {
        "enabled": true,
        "path": "/BooksApi"
      }
    }
  }
}

--rest.methods

Yalnızca saklı yordamlar. İzin verilen HTTP yöntemlerini değiştirin. Varsayılan değer POST'tır.

Example

dab update \
  RunReport \
  --rest true \
  --rest.methods GET,POST

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "RunReport": {
      "rest": {
        "enabled": true,
        "methods": [ "get", "post" ]
      }
    }
  }
}

Uyarı

REST devre dışıyken sağlamanın --rest.methods hiçbir etkisi yoktur.

-s, --source

Temel alınan veritabanı nesnesini güncelleştirin.

Example

dab update \
  Book \
  --source dbo.Books

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "source": {
        "object": "dbo.Books",
        "type": "table"
      }
    }
  }
}

--source.type

Kaynak nesne türünü değiştirin.

Uyarı

Görünümler için gerekir --source.key-fields. anahtar alanları belirtilmeden olarak view değiştirilmesi hataya neden olur.

Example

dab update \
  Book \
  --source.type view \
  --source.key-fields "id"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "source": {
        "type": "view",
        "object": "Book"
      },
      "fields": [
        {
          "name": "id",
          "primary-key": true
        }
      ]
    }
  }
}

--source.params

Yalnızca saklı yordamlar. Varsayılan parametre değerleri çift olarak name:value .

Example

dab update \
  RunReport \
  --source.params "startDate:2024-01-01,endDate:2024-12-31"

Sonuçta elde edilen yapılandırma

{
  "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

Çıkarılacak anahtar içermeyen görünümler veya tablolar için birincil anahtar alanlarını belirtin.

Example

dab update \
  Book \
  --source.type view \
  --source.key-fields "id"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "source": {
        "type": "view",
        "object": "Book"
      },
      "fields": [
        {
          "name": "id",
          "primary-key": true
        }
      ]
    }
  }
}

Uyarı

Görünümler her zaman anahtar alanları gerektirir. --source.key-fields seçeneği ile fieldsdiziye "primary-key": true girdiler ekler.

-m, --map

Veritabanı sütun adları ile kullanıma sunulan REST/GraphQL alan adları arasındaki eşlemeleri belirtin.

Example

dab update \
  Book \
  --map "id:bookId,title:bookTitle"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "fields": [
        {
          "name": "id",
          "alias": "bookId",
          "primary-key": false
        },
        {
          "name": "title",
          "alias": "bookTitle",
          "primary-key": false
        }
      ]
    }
  }
}

Uyarı

seçeneği, --map özellik kümesiyle fieldsalias dizide girdiler oluşturur.

--parameters.name

Yalnızca saklı yordamlar. Parametre adlarının virgülle ayrılmış listesi.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.

İpucu

Saklı yordam parametrelerini tanımlamak için , --parameters.nameve --parameters.descriptionile --parameters.requiredkullanın--parameters.default.

Example

dab update \
  GetOrdersByDateRange \
  --parameters.name "StartDate,EndDate" \
  --parameters.required "true,true" \
  --parameters.description "Beginning of date range,End of date range"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "GetOrdersByDateRange": {
      "source": {
        "parameters": [
          {
            "name": "StartDate",
            "description": "Beginning of date range",
            "required": true
          },
          {
            "name": "EndDate",
            "description": "End of date range",
            "required": true
          }
        ]
      }
    }
  }
}

--parameters.description

Yalnızca saklı yordamlar. ile hizalanmış --parameters.nameparametre açıklamalarının virgülle ayrılmış listesi.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin 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

Yalnızca saklı yordamlar. ile hizalanmış truedeğerlerin/false--parameters.namevirgülle ayrılmış listesi.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin 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

Yalnızca saklı yordamlar. ile hizalanmış --parameters.namevarsayılan değerlerin virgülle ayrılmış listesi.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.

Example

dab update \
  GetOrdersByDateRange \
  --parameters.name "CustomerID" \
  --parameters.default "null"

--fields.name

Açıklanacak veritabanı sütununun adı.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin 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"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Products": {
      "fields": [
        {
          "name": "Id",
          "description": "Product Id",
          "primary-key": true
        }
      ]
    }
  }
}

--fields.alias

Alanın diğer adı. ile hizalanmış --fields.namevirgülle ayrılmış bir liste kullanın.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.

İpucu

Kullanıma sunulan alan adlarını tanımlamak için ile --fields.alias kullanın--fields.name.

Example

dab update \
  Products \
  --fields.name "Id,Title" \
  --fields.alias "product_id,product_title"

--fields.description

Alanın açıklaması. ile hizalanmış --fields.namevirgülle ayrılmış bir liste kullanın.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin 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

Alan için birincil anahtar bayrağı. ile hizalanmış truedeğerlerin/false--fields.namevirgülle ayrılmış listesini kullanın.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.

İpucu

Bir çıkarılma anahtarı olmayan görünümler veya tablolar için birincil anahtar alanlarını tanımlamak için ile --fields.primary-key kullanın--fields.name.

Example

dab update \
  SalesSummary \
  --fields.name "year,region" \
  --fields.primary-key "true,true"

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "SalesSummary": {
      "fields": [
        {
          "name": "year",
          "primary-key": true
        },
        {
          "name": "region",
          "primary-key": true
        }
      ]
    }
  }
}

--mcp.dml-tools

Bu varlık için MCP DML (veri işleme dili) araçlarını etkinleştirin veya devre dışı bırakın. Varsayılan true değeridir.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.

Example

dab update \
  Book \
  --mcp.dml-tools false

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "Book": {
      "mcp": {
        "dml-tools": false
      }
    }
  }
}

Uyarı

Kullanıldığında --mcp.dml-tools , yapılandırmanın açık olması için nesne formunu kullanarak ayarlayın mcp .

--mcp.custom-tool

Yalnızca saklı yordamlar. Bu varlık için MCP özel aracını etkinleştirin. Varsayılan false değeridir.

Uyarı

Bu seçenek CLI'da 2.0.0-rc kullanılabilir. Veri API oluşturucusu 2.0 şu anda önizleme aşamasındadır. ile yükleyin dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.

Example

dab update \
  RunReport \
  --mcp.custom-tool true

Sonuçta elde edilen yapılandırma

{
  "entities": {
    "RunReport": {
      "mcp": {
        "custom-tool": true
      }
    }
  }
}

-c, --config

Yapılandırma dosyasının yolu.

Example

dab update \
  Book \
  --description "Updated description" \
  --config dab-config.json

--help

Yardım ekranını görüntüleyin.

Example

dab update --help

--version

Sürüm bilgilerini görüntüleme.

Example

dab update --version

Önemli

Kaynak türünün değiştirilmesi diğer özellikleri geçersiz kılabilir. Örneğin, görünümler her zaman anahtar alanları gerektirir; saklı yordamlar anahtar alanlarını tanımlayamaz.