TableOperations Sınıf

Tablo düzeyinde meta veri işlemleri için ad alanı.

client.tables aracılığıyla erişilir. Dataverse tablolarını oluşturma, silme, inceleme ve listelemenin yanı sıra sütun ekleme ve kaldırma işlemleri sağlar.

Example:


   client = DataverseClient(base_url, credential)

   # Create a table
   info = client.tables.create(
       "new_Product",
       {"new_Price": "decimal", "new_InStock": "bool"},
       solution="MySolution",
   )

   # List tables
   tables = client.tables.list()

   # Get table info
   info = client.tables.get("new_Product")

   # Add columns
   client.tables.add_columns("new_Product", {"new_Rating": "int"})

   # Remove columns
   client.tables.remove_columns("new_Product", "new_Rating")

   # Delete a table
   client.tables.delete("new_Product")

Oluşturucu

TableOperations(client: DataverseClient)

Parametreler

Name Description
client
Gerekli

Üst DataverseClient örnek.

Yöntemler

add_columns

Var olan bir tabloya bir veya daha fazla sütun ekleyin.

Example:


   created = client.tables.add_columns(
       "new_MyTestTable",
       {"new_Notes": "string", "new_Active": "bool"},
   )
   print(created)  # ['new_Notes', 'new_Active']
create

Belirtilen sütunlarla özel bir tablo oluşturun.

create_alternate_key

Tabloda alternatif bir anahtar oluşturun.

Alternatif anahtarlar, upsert işlemlerinin kayıtları birincil GUID yerine bir veya daha fazla sütuna göre tanımlamasına olanak sağlar. Anahtar oluşturulduktan sonra dizin oluşturma için kuyruğa alınır; dizini status hazır olduktan sonra'dan "Pending""Active" geçiş yapacaktır.

create_lookup_field

Basit bir arama alanı ilişkisi oluşturun.

Bu, var olan bir tabloya arama alanı eklemenin yaygın durumu için sarmalayan create_one_to_many_relationship bir kolaylık yöntemidir.

create_many_to_many_relationship

Tablolar arasında çoka çok ilişkisi oluşturun.

Bu işlem, ilişkiyi yönetmek için çoka çok ilişki ve kesişim tablosu oluşturur.

create_one_to_many_relationship

Tablolar arasında bire çok ilişkisi oluşturun.

Bu işlem, başvuran tabloda hem ilişkiyi hem de arama özniteliğini oluşturur.

delete

Şema adına göre özel bir tabloyu silin.

Warning

Bu işlem geri alınamaz ve

tablo tanımıyla birlikte tablo.

Example:


   client.tables.delete("new_MyTestTable")
delete_alternate_key

Alternatif anahtarı meta veri kimliğine göre silin.

Warning

Upsert işlemleri tarafından kullanılan alternatif bir anahtarın silinmesi

bu işlemlerin başarısız olmasına neden olur. Bu işlem geri alınamaz.

Example:


   client.tables.delete_alternate_key(
       "new_Product",
       "12345678-1234-1234-1234-123456789abc",
   )
delete_relationship

İlişkiyi meta veri kimliğine göre silin.

Warning

İlişki silindiğinde ilişkili arama özniteliği de kaldırılır

bire çok ilişkiler için. Bu işlem geri alınamaz.

Example:


   client.tables.delete_relationship(
       "12345678-1234-1234-1234-123456789abc"
   )
get

Tablo varsa, tablo için temel meta verileri alın.

Example:


   info = client.tables.get("new_MyTestTable")
   if info:
       print(f"Logical name: {info['table_logical_name']}")
       print(f"Entity set: {info['entity_set_name']}")
get_alternate_keys

Tabloda tanımlanan tüm alternatif anahtarları listeleyin.

get_relationship

şema adına göre ilişki meta verilerini alma.

Example:


   rel = client.tables.get_relationship("new_Department_Employee")
   if rel:
       print(f"Found: {rel.relationship_schema_name}")
list

Dataverse ortamındaki özel olmayan tüm tabloları listeleyin.

Varsayılan olarak, içindeki IsPrivate eq falseher tabloyu döndürür. Sonuçları daha da daraltmak için isteğe bağlı bir OData $filter ifadesi sağlayın. ifadesi kullanılarak IsPrivate eq falsevarsayılan and yan tümcesiyle birleştirilir.

Example:


   # List all non-private tables
   tables = client.tables.list()
   for table in tables:
       print(table["LogicalName"])

   # List only tables whose schema name starts with "new_"
   custom_tables = client.tables.list(
       filter="startswith(SchemaName, 'new_')"
   )

   # List tables with only specific properties
   tables = client.tables.list(
       select=["LogicalName", "SchemaName", "EntitySetName"]
   )
list_columns

Bir tablonun tüm öznitelik (sütun) tanımlarını listeleyin.

Example:


   # List all columns on the account table
   columns = client.tables.list_columns("account")
   for col in columns:
       print(f"{col['LogicalName']} ({col.get('AttributeType')})")

   # List only specific properties
   columns = client.tables.list_columns(
       "account",
       select=["LogicalName", "SchemaName", "AttributeType"],
   )

   # Filter to only string attributes
   columns = client.tables.list_columns(
       "account",
       filter="AttributeType eq 'String'",
   )
list_relationships

Ortamdaki tüm ilişki tanımlarını listeleyin.

Example:


   # List all relationships
   rels = client.tables.list_relationships()
   for rel in rels:
       print(f"{rel['SchemaName']} ({rel.get('@odata.type')})")

   # Filter by type
   one_to_many = client.tables.list_relationships(
       filter="RelationshipType eq Microsoft.Dynamics.CRM.RelationshipType'OneToManyRelationship'"
   )

   # Select specific properties
   rels = client.tables.list_relationships(
       select=["SchemaName", "ReferencedEntity", "ReferencingEntity"]
   )
list_table_relationships

Belirli bir tablo için tüm ilişkileri listeleyin.

, EntityDefinitions({id})/ManyToOneRelationshipsve EntityDefinitions({id})/ManyToManyRelationshipssorgulayarak EntityDefinitions({id})/OneToManyRelationshipsverilen tablo için bire çok, çoka bir ve çoka çok ilişkilerini birleştirir.

Example:


   # List all relationships for the account table
   rels = client.tables.list_table_relationships("account")
   for rel in rels:
       print(f"{rel['SchemaName']} -> {rel.get('@odata.type')}")
remove_columns

Tablodan bir veya daha fazla sütunu kaldırma.

Example:


   removed = client.tables.remove_columns(
       "new_MyTestTable",
       ["new_Notes", "new_Active"],
   )
   print(removed)  # ['new_Notes', 'new_Active']

add_columns

Var olan bir tabloya bir veya daha fazla sütun ekleyin.

Example:


   created = client.tables.add_columns(
       "new_MyTestTable",
       {"new_Notes": "string", "new_Active": "bool"},
   )
   print(created)  # ['new_Notes', 'new_Active']
add_columns(table: str, columns: Dict[str, Any]) -> List[str]

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (örn. "new_MyTestTable").

columns
Gerekli

Sütun şeması adlarının (özelleştirme ön eki ile) türlerine eşleştirilmesi. Desteklenen türler ile createaynıdır.

Döndürülenler

Tür Description

Oluşturulan sütunların şema adları.

Özel durumlar

Tür Description

Tablo yoksa.

create

Belirtilen sütunlarla özel bir tablo oluşturun.

create(table: str, columns: Dict[str, Any], *, solution: str | None = None, primary_column: str | None = None, display_name: str | None = None) -> TableInfo

Parametreler

Name Description
table
Gerekli
str

Özelleştirme ön eki olan tablonun şema adı (örn. "new_MyTestTable").

columns
Gerekli

Sütun şeması adlarının (özelleştirme ön eki ile) türlerine eşleştirilmesi. Desteklenen türler şunlardır "string" : (veya "text"), "memo" (veya "multiline"), "int" (veya "integer"), "decimal" (veya "double""money"), "float" (veya ), "datetime" (veya "date"), "bool" (veya "boolean"), "file"ve Enum alt sınıflar (yerel seçenek kümeleri için).

solution
Gerekli
str

Yeni tablonun sahibi olması gereken isteğe bağlı çözüm benzersiz adı. Atlandığında tablo varsayılan çözümde oluşturulur.

primary_column
Gerekli
str

Özelleştirme ön ekiyle isteğe bağlı birincil ad sütun şeması adı (örneğin "new_ProductName"). Sağlanmazsa, varsayılan olarak olur "{prefix}_Name".

display_name
Gerekli
str

Tablo için okunabilir görünen ad (örn. "Product"). Atlandığında, varsayılan olarak tablo şeması adını kullanır.

Yalnızca Anahtar Sözcük Parametreleri

Name Description
solution
Default value: None
primary_column
Default value: None
display_name
Default value: None

Döndürülenler

Tür Description

, , entity_set_name, metadata_idlogical_nameve columns_createdile schema_nametablo meta verileri. Geriye dönük uyumluluk için eski anahtarlarla dikte benzeri erişimi destekler.

Özel durumlar

Tür Description

Tablo oluşturma işlemi başarısız olursa veya tablo zaten varsa.

Örnekler

Basit sütunlar içeren bir tablo oluşturun:


   from enum import IntEnum

   class ItemStatus(IntEnum):
       ACTIVE = 1
       INACTIVE = 2

   result = client.tables.create(
       "new_Product",
       {
           "new_Title": "string",
           "new_Price": "decimal",
           "new_Status": ItemStatus,
       },
       solution="MySolution",
       primary_column="new_ProductName",
       display_name="Product",
   )
   print(f"Created: {result['table_schema_name']}")

create_alternate_key

Tabloda alternatif bir anahtar oluşturun.

Alternatif anahtarlar, upsert işlemlerinin kayıtları birincil GUID yerine bir veya daha fazla sütuna göre tanımlamasına olanak sağlar. Anahtar oluşturulduktan sonra dizin oluşturma için kuyruğa alınır; dizini status hazır olduktan sonra'dan "Pending""Active" geçiş yapacaktır.

create_alternate_key(table: str, key_name: str, columns: List[str], *, display_name: str | None = None, language_code: int = 1033) -> AlternateKeyInfo

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (örn. "new_Product").

key_name
Gerekli
str

Yeni alternatif anahtar için şema adı (örn. "new_product_code_key").

columns
Gerekli

Anahtarı oluşturan sütun mantıksal adlarının listesi (örn. ["new_productcode"]).

display_name
Gerekli
str

Anahtarın görünen adı. Sağlanmadığı takdirde varsayılan olarak ayarlanır key_name .

language_code
Gerekli
int

Etiketler için dil kodu. Varsayılan değer: 1033 (İngilizce).

Yalnızca Anahtar Sözcük Parametreleri

Name Description
display_name
Default value: None
language_code
Default value: 1033

Döndürülenler

Tür Description

Yeni oluşturulan alternatif anahtar için meta veriler.

Özel durumlar

Tür Description

Tablo yoksa.

Web API isteği başarısız olursa.

Örnekler

upsert için tek sütunlu bir alternatif anahtar oluşturun:


   key = client.tables.create_alternate_key(
       "new_Product",
       "new_product_code_key",
       ["new_productcode"],
       display_name="Product Code",
   )
   print(f"Key ID: {key.metadata_id}")
   print(f"Columns: {key.key_attributes}")

create_lookup_field

Basit bir arama alanı ilişkisi oluşturun.

Bu, var olan bir tabloya arama alanı eklemenin yaygın durumu için sarmalayan create_one_to_many_relationship bir kolaylık yöntemidir.

create_lookup_field(referencing_table: str, lookup_field_name: str, referenced_table: str, *, display_name: str | None = None, description: str | None = None, required: bool = False, cascade_delete: str = 'RemoveLink', solution: str | None = None, language_code: int = 1033) -> RelationshipInfo

Parametreler

Name Description
referencing_table
Gerekli
str

Arama alanına (alt tablo) sahip olacak tablonun mantıksal adı.

lookup_field_name
Gerekli
str

Arama alanının şema adı (örn. "new_AccountId").

referenced_table
Gerekli
str

Başvurulmakta olan tablonun mantıksal adı (üst tablo).

display_name
Gerekli
str

Arama alanının görünen adı. Varsayılan olarak başvurulan tablo adını kullanır.

description
Gerekli
str

Arama alanı için isteğe bağlı açıklama.

required
Gerekli

Aramanın gerekli olup olmadığı. Varsayılan değer False’dır.

cascade_delete
Gerekli
str

Silme davranışı ("RemoveLink", "Cascade", "Restrict"). Varsayılan değer "RemoveLink"’dır.

solution
Gerekli
str

İlişkinin ekleneceği isteğe bağlı çözüm benzersiz adı.

language_code
Gerekli
int

Etiketler için dil kodu. Varsayılan değer: 1033 (İngilizce).

Yalnızca Anahtar Sözcük Parametreleri

Name Description
display_name
Default value: None
description
Default value: None
required
Default value: False
cascade_delete
Default value: RemoveLink
solution
Default value: None
language_code
Default value: 1033

Döndürülenler

Tür Description

, , relationship_id, relationship_schema_name, relationship_typeve lookup_schema_namereferenced_entityile referencing_entityilişki meta verileri.

Özel durumlar

Tür Description

Web API isteği başarısız olursa.

Örnekler

Basit bir arama alanı oluşturun:


   result = client.tables.create_lookup_field(
       referencing_table="new_order",
       lookup_field_name="new_AccountId",
       referenced_table="account",
       display_name="Account",
       required=True,
       cascade_delete=CASCADE_BEHAVIOR_REMOVE_LINK,
   )
   print(f"Created lookup: {result.lookup_schema_name}")

create_many_to_many_relationship

Tablolar arasında çoka çok ilişkisi oluşturun.

Bu işlem, ilişkiyi yönetmek için çoka çok ilişki ve kesişim tablosu oluşturur.

create_many_to_many_relationship(relationship: ManyToManyRelationshipMetadata, *, solution: str | None = None) -> RelationshipInfo

Parametreler

Name Description
relationship
Gerekli

Çoka çok ilişkisini tanımlayan meta veriler.

solution
Gerekli
str

İlişki eklemek için isteğe bağlı çözüm benzersiz adı.

Yalnızca Anahtar Sözcük Parametreleri

Name Description
solution
Default value: None

Döndürülenler

Tür Description

, , relationship_id, relationship_schema_namerelationship_typeve entity1_logical_nameile entity2_logical_nameilişki meta verileri.

Özel durumlar

Tür Description

Web API isteği başarısız olursa.

Örnekler

Çoka çok ilişkisi oluşturma: Çalışan <-> Proje:


   from PowerPlatform.Dataverse.models import (
       ManyToManyRelationshipMetadata,
   )

   relationship = ManyToManyRelationshipMetadata(
       schema_name="new_employee_project",
       entity1_logical_name="new_employee",
       entity2_logical_name="new_project",
   )

   result = client.tables.create_many_to_many_relationship(relationship)
   print(f"Created: {result.relationship_schema_name}")

create_one_to_many_relationship

Tablolar arasında bire çok ilişkisi oluşturun.

Bu işlem, başvuran tabloda hem ilişkiyi hem de arama özniteliğini oluşturur.

create_one_to_many_relationship(lookup: LookupAttributeMetadata, relationship: OneToManyRelationshipMetadata, *, solution: str | None = None) -> RelationshipInfo

Parametreler

Name Description
lookup
Gerekli

Arama özniteliğini tanımlayan meta veriler.

relationship
Gerekli

İlişkiyi tanımlayan meta veriler.

solution
Gerekli
str

İlişki eklemek için isteğe bağlı çözüm benzersiz adı.

Yalnızca Anahtar Sözcük Parametreleri

Name Description
solution
Default value: None

Döndürülenler

Tür Description

, , relationship_id, relationship_schema_name, relationship_typeve lookup_schema_namereferenced_entityile referencing_entityilişki meta verileri.

Özel durumlar

Tür Description

Web API isteği başarısız olursa.

Örnekler

Bire çok ilişkisi oluşturma: Departman (1) -> Çalışan (N):


   from PowerPlatform.Dataverse.models import (
       LookupAttributeMetadata,
       OneToManyRelationshipMetadata,
       Label,
       LocalizedLabel,
       CascadeConfiguration,
   )
   from PowerPlatform.Dataverse.common.constants import (
       CASCADE_BEHAVIOR_REMOVE_LINK,
   )

   lookup = LookupAttributeMetadata(
       schema_name="new_DepartmentId",
       display_name=Label(
           localized_labels=[
               LocalizedLabel(label="Department", language_code=1033)
           ]
       ),
   )

   relationship = OneToManyRelationshipMetadata(
       schema_name="new_Department_Employee",
       referenced_entity="new_department",
       referencing_entity="new_employee",
       referenced_attribute="new_departmentid",
       cascade_configuration=CascadeConfiguration(
           delete=CASCADE_BEHAVIOR_REMOVE_LINK,
       ),
   )

   result = client.tables.create_one_to_many_relationship(lookup, relationship)
   print(f"Created lookup field: {result.lookup_schema_name}")

delete

Şema adına göre özel bir tabloyu silin.

Warning

Bu işlem geri alınamaz ve

tablo tanımıyla birlikte tablo.

Example:


   client.tables.delete("new_MyTestTable")
delete(table: str) -> None

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (örn. "new_MyTestTable").

Özel durumlar

Tür Description

Tablo yoksa veya silme başarısız olursa.

delete_alternate_key

Alternatif anahtarı meta veri kimliğine göre silin.

Warning

Upsert işlemleri tarafından kullanılan alternatif bir anahtarın silinmesi

bu işlemlerin başarısız olmasına neden olur. Bu işlem geri alınamaz.

Example:


   client.tables.delete_alternate_key(
       "new_Product",
       "12345678-1234-1234-1234-123456789abc",
   )
delete_alternate_key(table: str, key_id: str) -> None

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (örn. "new_Product").

key_id
Gerekli
str

Silinecek alternatif anahtarın meta veri GUID'i.

Özel durumlar

Tür Description

Tablo yoksa.

Web API isteği başarısız olursa.

delete_relationship

İlişkiyi meta veri kimliğine göre silin.

Warning

İlişki silindiğinde ilişkili arama özniteliği de kaldırılır

bire çok ilişkiler için. Bu işlem geri alınamaz.

Example:


   client.tables.delete_relationship(
       "12345678-1234-1234-1234-123456789abc"
   )
delete_relationship(relationship_id: str) -> None

Parametreler

Name Description
relationship_id
Gerekli
str

İlişki meta verilerinin GUID değeri.

Özel durumlar

Tür Description

Web API isteği başarısız olursa.

get

Tablo varsa, tablo için temel meta verileri alın.

Example:


   info = client.tables.get("new_MyTestTable")
   if info:
       print(f"Logical name: {info['table_logical_name']}")
       print(f"Entity set: {info['entity_set_name']}")
get(table: str) -> TableInfo | None

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (ör. "new_MyTestTable" veya "account").

Döndürülenler

Tür Description

Tablo meta verileri veya None tablo bulunamazsa. Geriye dönük uyumluluk için eski anahtarlarla dikte benzeri erişimi destekler.

get_alternate_keys

Tabloda tanımlanan tüm alternatif anahtarları listeleyin.

get_alternate_keys(table: str) -> List[AlternateKeyInfo]

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (örn. "new_Product").

Döndürülenler

Tür Description

Alternatif anahtar meta veri nesnelerinin listesi. Alternatif anahtar tanımlanmadıysa boş olabilir.

Özel durumlar

Tür Description

Tablo yoksa.

Web API isteği başarısız olursa.

Örnekler

Alternatif anahtarları listeleyin ve durumlarını yazdırın:


   keys = client.tables.get_alternate_keys("new_Product")
   for key in keys:
       print(f"{key.schema_name}: {key.status}")

get_relationship

şema adına göre ilişki meta verilerini alma.

Example:


   rel = client.tables.get_relationship("new_Department_Employee")
   if rel:
       print(f"Found: {rel.relationship_schema_name}")
get_relationship(schema_name: str) -> RelationshipInfo | None

Parametreler

Name Description
schema_name
Gerekli
str

İlişkinin şema adı.

Döndürülenler

Tür Description

İlişki meta verileri veya None bulunamazsa.

Özel durumlar

Tür Description

Web API isteği başarısız olursa.

list

Dataverse ortamındaki özel olmayan tüm tabloları listeleyin.

Varsayılan olarak, içindeki IsPrivate eq falseher tabloyu döndürür. Sonuçları daha da daraltmak için isteğe bağlı bir OData $filter ifadesi sağlayın. ifadesi kullanılarak IsPrivate eq falsevarsayılan and yan tümcesiyle birleştirilir.

Example:


   # List all non-private tables
   tables = client.tables.list()
   for table in tables:
       print(table["LogicalName"])

   # List only tables whose schema name starts with "new_"
   custom_tables = client.tables.list(
       filter="startswith(SchemaName, 'new_')"
   )

   # List tables with only specific properties
   tables = client.tables.list(
       select=["LogicalName", "SchemaName", "EntitySetName"]
   )
list(*, filter: str | None = None, select: List[str] | None = None) -> List[Dict[str, Any]]

Parametreler

Name Description
filter
Gerekli
str

Döndürülen tabloların listesini daha da daraltmak için isteğe bağlı OData $filter ifadesi (örn. "SchemaName eq 'Account'"). Filtre ifadelerindeki sütun adları, meta verilerdeki EntityDefinitions (genellikle PascalCase) tam özellik adlarını kullanmalıdır.

select
Gerekli
list[str] veya None

Yanıta eklenecek özellik adlarının isteğe bağlı listesi (OData $select sorgu seçeneğiyle yansıtılır). Özellik adları meta verilerden EntityDefinitions tam PascalCase adlarını kullanmalıdır (örn. ["LogicalName", "SchemaName", "DisplayName"]). (varsayılan) veya boş bir liste olduğunda None , tüm özellikler döndürülür.

Yalnızca Anahtar Sözcük Parametreleri

Name Description
filter
Default value: None
select
Default value: None

Döndürülenler

Tür Description

EntityDefinition meta veri sözlüklerinin listesi.

list_columns

Bir tablonun tüm öznitelik (sütun) tanımlarını listeleyin.

Example:


   # List all columns on the account table
   columns = client.tables.list_columns("account")
   for col in columns:
       print(f"{col['LogicalName']} ({col.get('AttributeType')})")

   # List only specific properties
   columns = client.tables.list_columns(
       "account",
       select=["LogicalName", "SchemaName", "AttributeType"],
   )

   # Filter to only string attributes
   columns = client.tables.list_columns(
       "account",
       filter="AttributeType eq 'String'",
   )
list_columns(table: str, *, select: List[str] | None = None, filter: str | None = None) -> List[Dict[str, Any]]

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (ör. "account" veya "new_Product").

select
Gerekli
list[str] veya None

aracılığıyla $selectyansıtacak özellik adlarının isteğe bağlı listesi. Değerler as-is geçirilir (PascalCase).

filter
Gerekli
str

İsteğe bağlı OData $filter ifadesi. Örneğin, "AttributeType eq 'String'" yalnızca dize sütunlarını döndürür.

Yalnızca Anahtar Sözcük Parametreleri

Name Description
select
Default value: None
filter
Default value: None

Döndürülenler

Tür Description

Ham öznitelik meta veri sözlüklerinin listesi.

Özel durumlar

Tür Description

Tablo bulunamazsa.

Web API isteği başarısız olursa.

list_relationships

Ortamdaki tüm ilişki tanımlarını listeleyin.

Example:


   # List all relationships
   rels = client.tables.list_relationships()
   for rel in rels:
       print(f"{rel['SchemaName']} ({rel.get('@odata.type')})")

   # Filter by type
   one_to_many = client.tables.list_relationships(
       filter="RelationshipType eq Microsoft.Dynamics.CRM.RelationshipType'OneToManyRelationship'"
   )

   # Select specific properties
   rels = client.tables.list_relationships(
       select=["SchemaName", "ReferencedEntity", "ReferencingEntity"]
   )
list_relationships(*, filter: str | None = None, select: List[str] | None = None) -> List[Dict[str, Any]]

Parametreler

Name Description
filter
Gerekli
str

İsteğe bağlı OData $filter ifadesi. Örneğin, "RelationshipType eq Microsoft.Dynamics.CRM.RelationshipType'OneToManyRelationship'" yalnızca bire çok ilişkileri döndürür.

select
Gerekli
list[str] veya None

aracılığıyla $selectyansıtacak özellik adlarının isteğe bağlı listesi. Değerler as-is geçirilir (PascalCase).

Yalnızca Anahtar Sözcük Parametreleri

Name Description
filter
Default value: None
select
Default value: None

Döndürülenler

Tür Description

Ham ilişki meta veri sözlüklerinin listesi.

Özel durumlar

Tür Description

Web API isteği başarısız olursa.

list_table_relationships

Belirli bir tablo için tüm ilişkileri listeleyin.

, EntityDefinitions({id})/ManyToOneRelationshipsve EntityDefinitions({id})/ManyToManyRelationshipssorgulayarak EntityDefinitions({id})/OneToManyRelationshipsverilen tablo için bire çok, çoka bir ve çoka çok ilişkilerini birleştirir.

Example:


   # List all relationships for the account table
   rels = client.tables.list_table_relationships("account")
   for rel in rels:
       print(f"{rel['SchemaName']} -> {rel.get('@odata.type')}")
list_table_relationships(table: str, *, filter: str | None = None, select: List[str] | None = None) -> List[Dict[str, Any]]

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (örn. "account").

filter
Gerekli
str

Her alt isteğe uygulanan isteğe bağlı OData $filter ifadesi.

select
Gerekli
list[str] veya None

aracılığıyla $selectyansıtacak özellik adlarının isteğe bağlı listesi. Değerler as-is geçirilir (PascalCase).

Yalnızca Anahtar Sözcük Parametreleri

Name Description
filter
Default value: None
select
Default value: None

Döndürülenler

Tür Description

Bire çok, çoka bir ve çoka çok ilişki meta veri sözlüklerinin birleştirilmiş listesi.

Özel durumlar

Tür Description

Tablo bulunamazsa.

Web API isteği başarısız olursa.

remove_columns

Tablodan bir veya daha fazla sütunu kaldırma.

Example:


   removed = client.tables.remove_columns(
       "new_MyTestTable",
       ["new_Notes", "new_Active"],
   )
   print(removed)  # ['new_Notes', 'new_Active']
remove_columns(table: str, columns: str | List[str]) -> List[str]

Parametreler

Name Description
table
Gerekli
str

Tablonun şema adı (örn. "new_MyTestTable").

columns
Gerekli
str veya list[str]

Kaldırılacak sütun şeması adı veya sütun şeması adları listesi. Özelleştirme ön ekini (örneğin) "new_TestColumn"içermelidir.

Döndürülenler

Tür Description

Kaldırılan sütunların şema adları.

Özel durumlar

Tür Description

Tablo veya belirtilen sütun yoksa.