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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

İ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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

Example

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

--fields.name

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

Uyarı

Bu seçenek, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

İ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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

İ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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

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, Veri API oluşturucusu 2.0 önizleme CLI'sında kullanılabilir. ile dotnet tool install microsoft.dataapibuilder --prereleaseen son ön sürümü yükleyin.

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.