TableService クラス

これは、Azure Table リソースを管理するメイン クラスです。

Azure Table サービスは、テーブルの形式で構造化ストレージを提供します。 テーブルには、データがエンティティのコレクションとして格納されます。 エンティティは行に似ています。 エンティティには、プライマリ キーと一連のプロパティがあります。 プロパティは名前と型指定された値のペアであり、列に似ています。 テーブル サービスではテーブルにスキーマを設定しないため、同じテーブル内の 2 つのエンティティが異なるプロパティのセットを持つ場合があります。 開発者は、クライアント側でスキーマを設定することもできます。 テーブルには、エンティティをいくつでも含めることができます。

継承
TableService

コンストラクター

TableService(account_name=None, account_key=None, sas_token=None, is_emulated=False, protocol='https', endpoint_suffix='core.windows.net', request_session=None, connection_string=None, socket_timeout=None)

パラメーター

account_name
既定値: None
account_key
既定値: None
sas_token
既定値: None
is_emulated
既定値: False
protocol
既定値: https
endpoint_suffix
既定値: core.windows.net
request_session
既定値: None
connection_string
既定値: None
socket_timeout
既定値: None

変数

key_encryption_key
object

ユーザーが必要に応じて提供する key-encryption-key。 指定した場合は、 を使用して、サポートされているメソッドで暗号化/暗号化解除を行います。 復号化を必要とするメソッドの場合は、key_encryption_keyまたはリゾルバーを指定する必要があります。 両方を指定すると、競合回避モジュールが優先されます。 暗号化を必要とする API には、次のメソッドを実装する必要があります。wrap_key(key)、ユーザーが選択したアルゴリズムを使用して、指定したキー (バイト) をラップします。 暗号化されたキーをバイトとして返します。 get_key_wrap_algorithm()は、指定した対称キーをラップするために使用されるアルゴリズムを返します。 get_kid()は、このキー暗号化キーの文字列キー ID を返します。 復号化を必要とする API には、次のメソッドを実装する必要があります。unwrap_key(key, algorithm)、文字列指定アルゴリズムを使用して、指定された対称キーのラップされていない形式を返します。 get_kid()は、このキー暗号化キーの文字列キー ID を返します。

key_resolver_function
<xref:kid>)<xref: >(<xref:function>

必要に応じてユーザーが提供するキーを解決する関数。 指定した場合は、 を使用して、サポートされているメソッドで暗号化を解除します。 復号化を必要とするメソッドの場合は、key_encryption_keyまたはリゾルバーを指定する必要があります。 両方を指定すると、競合回避モジュールが優先されます。 kid 文字列を使用して、上記で定義したインターフェイスを実装するキー暗号化キーを返します。

row_key, property_name) encryption_resolver_functions
<xref:function>(<xref:partition_key,>

エンティティのパーティション キー、行キー、およびプロパティ名を受け取り、そのプロパティを暗号化する必要があるかどうかを示すブール値を返す関数。

require_encryption
bool

すべてのメッセージがキューに正常にアップロードされ、ダウンロードされ、キューから正常に読み取られるすべてのメッセージが、サーバー上で暗号化されていることを確認するために設定できるフラグ。 このフラグが設定されている場合は、暗号化/暗号化解除に必要なすべてのパラメーターを指定する必要があります。 key_encryption_keyと競合回避モジュールについては、上記のコメントを参照してください。

メソッド

batch

コンテキスト マネージャーとして使用できるバッチ オブジェクトを作成します。 終了時にバッチをコミットします。

commit_batch

要求を <xref:azure.storage.table.TableBatch> コミットします。

create_table

ストレージ アカウントに新しいテーブルを作成します。

delete_entity

テーブル内の既存のエンティティを削除します。 エンティティが存在しない場合は をスローします。

正常に削除されたエンティティは、その時点で削除対象としてマークされ、クライアントからアクセスできなくなります。 このエンティティは、後でガベージ コレクション中に Table Service から削除されます。

delete_table

指定したテーブルとそのテーブルに含まれるすべてのデータを削除します。

正常に削除されたテーブルは、その時点で削除対象としてマークされ、クライアントからアクセスできなくなります。 このテーブルは、後でガベージ コレクション中に Table Service から削除されます。

テーブルの削除は、完了するまで少なくとも 40 秒はかかる可能性があります。 削除中にテーブルに対して操作が試行されると、 <xref:azure.cosmosdb.table.tableservice.AzureConflictHttpError> がスローされます。

exists

テーブルが存在するかどうかを示すブール値を返します。

generate_account_shared_access_signature

テーブル サービスの共有アクセス署名を生成します。 返されたシグネチャは、TableService の sas_token パラメーターと共に使用します。

generate_table_shared_access_signature

テーブルの共有アクセス署名を生成します。 返されたシグネチャは、TableService の sas_token パラメーターと共に使用します。

get_entity

指定したテーブルからエンティティを取得します。 エンティティが存在しない場合は をスローします。

get_table_acl

共有アクセス署名と共に使用できる、テーブルで指定された保存されているアクセス ポリシーの詳細を返します。

get_table_service_properties

ログ記録、分析、CORS ルールなど、ストレージ アカウントの Table サービスのプロパティを取得します。

get_table_service_stats

Table Service のレプリケーションに関連する統計情報を取得します。 これは、ストレージ アカウントに対して読み取りアクセス geo 冗長レプリケーションが有効になっている場合にのみ使用できます。

地理冗長レプリケーションでは、Azure ストレージによって 2 か所でデータの持続性が維持されます。 両方の場所で、Azure ストレージは継続的にデータの複数の正常なレプリカを維持します。 データの読み取り、作成、更新、または削除を行う場所は、1 次ストレージ アカウント拠点です。 プライマリの場所は、Azure Management Azure クラシック ポータル (米国中北部など) を使用してアカウントを作成するときに選択したリージョンに存在します。 データのレプリケート先の場所が、2 次拠点です。 2 次拠点は 1 次拠点の場所に基づいて自動的に決められ、1 次拠点と同じ地域にある 2 つ目のデータ センター内に設定されます。 読み取りアクセスの地理冗長レプリケーションがストレージ アカウントで有効な場合は、2 次拠点から読み取り専用アクセスを使用できます。

insert_entity

テーブルに新しいエンティティを挿入します。 PartitionKey と RowKey が同じエンティティが既に存在する場合は、 をスローします。

テーブルにエンティティを挿入する場合は、PartitionKey および RowKey システム プロパティの値を指定する必要があります。 これらのプロパティがプライマリ キーを構成します。これらのプロパティはテーブル内で一意である必要があります。 PartitionKey と RowKey の両方の値は文字列値である必要があります。各キー値のサイズは最大 64 KB です。 キー値は正規の順序で並べ替えられるため、キー値に整数値を使用している場合は、整数から固定幅文字列に変換する必要があります。 たとえば、適切な並べ替えを行うには、値 1 を 0000001 に変換する必要があります。

insert_or_merge_entity

テーブルにエンティティが存在する場合はマージし、存在しない場合は新しいエンティティを挿入します。

insert_or_merge_entityを使用してエンティティをマージする場合、要求でエンティティが定義または含まれていない場合、前のエンティティのすべてのプロパティが保持されます。

insert_or_replace_entity

テーブルにエンティティが存在する場合は置換し、存在しない場合は新しいエンティティを挿入します。 この操作は、エンティティを挿入 (insert) または更新 (update) できるため、"upsert" 操作とも呼ばれます。

insert_or_replace_entityを使用してエンティティを置き換える場合、新しいエンティティでエンティティが定義されていない場合は、前のエンティティのすべてのプロパティが削除されます。

list_tables

テーブルを一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従い、すべてのテーブルが返されるか、num_resultsに達すると停止します。

num_resultsを指定し、アカウントにテーブルの数を超えるテーブルがある場合、ジェネレーターは完了するとnext_markerフィールドが設定されます。 より多くの結果が必要な場合は、このマーカーを使用して新しいジェネレーターを作成できます。

merge_entity

エンティティのプロパティをマージして、既存のエンティティを更新します。 エンティティが存在しない場合は をスローします。

この操作は、update_entity操作と同様に既存のエンティティを置き換えません。 プロパティは、merge_entityでは削除できません。

null 値を持つプロパティはすべて無視されます。 その他のプロパティはすべて更新または追加されます。

query_entities

指定したテーブル内のエンティティを一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従い、すべてのエンティティが返されるか、num_resultsに達したときに停止します。

num_resultsが指定され、アカウントに含まれるエンティティの数がその数を超える場合、ジェネレーターは完了するとnext_markerフィールドが設定されます。 より多くの結果が必要な場合は、このマーカーを使用して新しいジェネレーターを作成できます。

set_table_acl

Shared Access Signature で使用できるテーブルの格納されたアクセス ポリシーを設定します。

テーブルのアクセス許可を設定すると、既存のアクセス許可が置き換えられます。 テーブルのアクセス許可を更新するには、 を呼び出 get_table_acl して、テーブルに関連付けられているすべてのアクセス ポリシーをフェッチし、変更するアクセス ポリシーを変更してから、更新を実行するデータの完全なセットでこの関数を呼び出します。

保存されているアクセス ポリシーをテーブルに設定したときには、有効になるまでに最大で 30 秒かかる場合があります。 この間、格納されているアクセス ポリシーに関連付けられている共有アクセス署名は、アクセス ポリシーがアクティブになるまで を <xref:azure.cosmosdb.table.tableservice.AzureHttpError> スローします。

set_table_service_properties

Azure Storage Analyticsを含む、ストレージ アカウントの Table サービスのプロパティを設定します。 要素 (ログ記録など) が None のままの場合、その機能に対するサービスの既存の設定は保持されます。 Azure Storage Analyticsの詳細については、「」を参照してくださいhttps://msdn.microsoft.com/en-us/library/azure/hh343270.aspx

update_entity

テーブル内の既存のエンティティを更新します。 エンティティが存在しない場合は をスローします。 update_entity操作はエンティティ全体を置き換え、プロパティの削除に使用できます。

batch

コンテキスト マネージャーとして使用できるバッチ オブジェクトを作成します。 終了時にバッチをコミットします。

batch(table_name, timeout=None)

パラメーター

table_name
str
必須

バッチをコミットするテーブルの名前。

timeout
int
必須

秒単位で表されるサーバー タイムアウト。

commit_batch

要求を <xref:azure.storage.table.TableBatch> コミットします。

commit_batch(table_name, batch, timeout=None)

パラメーター

table_name
str
必須

バッチをコミットするテーブルの名前。

batch
TableBatch
必須

コミットするバッチ。

timeout
int
既定値: None

秒単位で表されるサーバー タイムアウト。

戻り値

バッチ内の要求に対応するバッチ応答の一覧。 項目は、成功した場合は etag、失敗した場合はエラー オブジェクトのいずれかになります。

の戻り値の型 :

list(<xref:azure.storage.table.models.AzureBatchOperationError>, str)

create_table

ストレージ アカウントに新しいテーブルを作成します。

create_table(table_name, fail_on_exist=False, timeout=None)

パラメーター

table_name
str
必須

作成するテーブルの名前です。 テーブル名には英数字のみを含めることができます。数字で始めることはできません。 大文字と小文字は区別されず、3 から 63 文字の長さにする必要があります。

fail_on_exist
bool
既定値: False

テーブルが既に存在する場合に例外をスローするかどうかを指定します。

timeout
int
既定値: None

秒単位で表されるサーバー タイムアウト。

戻り値

テーブルが作成されたかどうかを示すブール値。 fail_on_existが True に設定されている場合、false を返す代わりに がスローされます。

の戻り値の型 :

delete_entity

テーブル内の既存のエンティティを削除します。 エンティティが存在しない場合は をスローします。

正常に削除されたエンティティは、その時点で削除対象としてマークされ、クライアントからアクセスできなくなります。 このエンティティは、後でガベージ コレクション中に Table Service から削除されます。

delete_entity(table_name, partition_key, row_key, if_match='*', timeout=None)

パラメーター

table_name
str
必須

削除するエンティティを含むテーブルの名前。

partition_key
str
必須

エンティティの PartitionKey。

row_key
str
必須

エンティティの RowKey。

if_match
str
既定値: *

クライアントでは、オプティミスティック コンカレンシーを目的としてサービスによって維持される ETag と比較するために、要求でエンティティの ETag を指定する場合があります。 削除操作は、クライアントから送信された ETag がサーバーで維持される値と一致した場合にのみ実行されます。これは、エンティティがクライアントで取得されてから変更されていないことを示します。 無条件削除を強制するには、If-Matchをワイルドカード文字 (*) に設定します。

timeout
int
既定値: None

秒単位で表されるサーバー タイムアウト。

delete_table

指定したテーブルとそのテーブルに含まれるすべてのデータを削除します。

正常に削除されたテーブルは、その時点で削除対象としてマークされ、クライアントからアクセスできなくなります。 このテーブルは、後でガベージ コレクション中に Table Service から削除されます。

テーブルの削除は、完了するまで少なくとも 40 秒はかかる可能性があります。 削除中にテーブルに対して操作が試行されると、 <xref:azure.cosmosdb.table.tableservice.AzureConflictHttpError> がスローされます。

delete_table(table_name, fail_not_exist=False, timeout=None)

パラメーター

table_name
str
必須

削除するテーブルの名前。

fail_not_exist
bool
既定値: False

テーブルが存在しない場合に例外をスローするかどうかを指定します。

timeout
int
既定値: None

秒単位で表されるサーバー タイムアウト。

戻り値

テーブルが削除されたかどうかを示すブール値。 fail_not_existが True に設定されている場合、false を返す代わりに がスローされます。

の戻り値の型 :

exists

テーブルが存在するかどうかを示すブール値を返します。

exists(table_name, timeout=None)

パラメーター

table_name
str
必須

存在を確認するテーブルの名前。

timeout
int
既定値: None

秒単位で表されるサーバー タイムアウト。

戻り値

テーブルが存在するかどうかを示すブール値。

の戻り値の型 :

generate_account_shared_access_signature

テーブル サービスの共有アクセス署名を生成します。 返されたシグネチャは、TableService の sas_token パラメーターと共に使用します。

generate_account_shared_access_signature(resource_types, permission, expiry, start=None, ip=None, protocol=None)

パラメーター

resource_types
ResourceTypes
必須

アカウント SAS でアクセスできるリソースの種類を指定します。

permission
AccountPermissions
必須

共有アクセス署名と関連付けられているアクセス許可。 ユーザーが使用できる操作は、アクセス許可によって許可されるものに制限されます。 このフィールドを含む格納されているアクセス ポリシーを参照する ID が指定されていない限り、必須です。 このフィールドは、関連付けられた保存されているアクセス ポリシーで指定されている場合には省略する必要があります。

expiry
datetime または str
必須

共有アクセス署名が無効になる時刻。 このフィールドを含む格納されているアクセス ポリシーを参照する ID が指定されていない限り、必須です。 このフィールドは、関連付けられた保存されているアクセス ポリシーで指定されている場合には省略する必要があります。 Azure は常に値を UTC に変換します。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。

start
datetime または str
既定値: None

共有アクセス署名が有効になる時刻。 省略した場合、この呼び出しの開始時刻はストレージ サービスが要求を受け取った時刻と見なされます。 Azure は常に値を UTC に変換します。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。

ip
str
既定値: None

要求を受け入れる IP アドレスまたは IP アドレスの範囲を指定します。 要求の発信元の IP アドレスが SAS トークンで指定された IP アドレスまたはアドレス範囲と一致しない場合、要求は認証されません。 たとえば、SAS で sip=168.1.5.65 または sip=168.1.5.60-168.1.5.70 を指定すると、要求はこれらの IP アドレスに制限されます。

protocol
str
既定値: None

要求に対して許可されるプロトコルを指定します。 既定値は https,http です。 指定できる値については、「Protocol」を参照してください。

戻り値

Shared Access Signature (sas) トークン。

の戻り値の型 :

str

generate_table_shared_access_signature

テーブルの共有アクセス署名を生成します。 返されたシグネチャは、TableService の sas_token パラメーターと共に使用します。

generate_table_shared_access_signature(table_name, permission=None, expiry=None, start=None, id=None, ip=None, protocol=None, start_pk=None, start_rk=None, end_pk=None, end_rk=None)

パラメーター

table_name
str
必須

SAS トークンを作成するテーブルの名前。

permission
TablePermissions
既定値: None

共有アクセス署名と関連付けられているアクセス許可。 ユーザーが使用できる操作は、アクセス許可によって許可されるものに制限されます。 このフィールドを含む格納されているアクセス ポリシーを参照する ID が指定されていない限り、必須です。 このフィールドは、関連付けられた保存されているアクセス ポリシーで指定されている場合には省略する必要があります。

expiry
datetime または str
既定値: None

共有アクセス署名が無効になる時刻。 このフィールドを含む格納されているアクセス ポリシーを参照する ID が指定されていない限り、必須です。 このフィールドは、関連付けられた保存されているアクセス ポリシーで指定されている場合には省略する必要があります。 Azure は常に値を UTC に変換します。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。

start
datetime または str
既定値: None

共有アクセス署名が有効になる時刻。 省略した場合、この呼び出しの開始時刻はストレージ サービスが要求を受け取った時刻と見なされます。 Azure は常に値を UTC に変換します。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。

id
str
既定値: None

格納されているアクセス ポリシーに関連付けられる最大 64 文字の一意の値。 格納されているアクセス ポリシーを作成するには、 を使用 set_table_aclします。

ip
str
既定値: None

要求を受け入れる IP アドレスまたは IP アドレスの範囲を指定します。 要求の発信元の IP アドレスが SAS トークンで指定された IP アドレスまたはアドレス範囲と一致しない場合、要求は認証されません。 たとえば、SAS で sip='168.1.5.65' または sip='168.1.5.60-168.1.5.70' を指定すると、それらの IP アドレスに要求が制限されます。

protocol
str
既定値: None

要求に対して許可されるプロトコルを指定します。 既定値は https,http です。 指定できる値については、「Protocol」を参照してください。

start_pk
str
既定値: None

この共有アクセス署名でアクセスできる最小パーティション キー。 startpk は startrk に付随する必要があります。 キー値は包含的です。 省略した場合、アクセスできるテーブル エンティティに下限はありません。

start_rk
str
既定値: None

この共有アクセス署名でアクセスできる最小行キー。 startpk は startrk に付随する必要があります。 キー値は包含的です。 省略した場合、アクセスできるテーブル エンティティに下限はありません。

end_pk
str
既定値: None

この共有アクセス署名でアクセスできる最大パーティション キー。 endpk は endrk に付随する必要があります。 キー値は包含的です。 省略した場合、アクセスできるテーブル エンティティに上限はありません。

end_rk
str
既定値: None

この共有アクセス署名でアクセスできる最大行キー。 endpk は endrk に付随する必要があります。 キー値は包含的です。 省略した場合、アクセスできるテーブル エンティティに上限はありません。

戻り値

Shared Access Signature (sas) トークン。

の戻り値の型 :

str

get_entity

指定したテーブルからエンティティを取得します。 エンティティが存在しない場合は をスローします。

get_entity(table_name, partition_key, row_key, select=None, accept='application/json;odata=minimalmetadata', property_resolver=None, timeout=None)

パラメーター

table_name
str
必須

エンティティの取得元となるテーブルの名前。

partition_key
str
必須

エンティティの PartitionKey。

row_key
str
必須

エンティティの RowKey。

select
str
既定値: None

セットからエンティティの目的のプロパティのみを返します。

accept
str
既定値: application/json;odata=minimalmetadata

応答ペイロードの受け入れられたコンテンツの種類を指定します。 指定できる値については、「<xref:azure.storage.table.models.TablePayloadFormat>」を参照してください。

property_resolver
<xref:func>(<xref:pk>, <xref:rk>, <xref:prop_name>, <xref:prop_value>, <xref:service_edm_type>)
既定値: None

サービスによって返された場合、パーティション キー、行キー、プロパティ名、プロパティ値、およびプロパティ EdmType を指定した関数は、プロパティの EdmType を返します。 accept が JSON_NO_METADATA に設定されている場合に一般的に使用されます。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

取得されたエンティティ。

の戻り値の型 :

<xref:azure.storage.table.models.Entity>

get_table_acl

共有アクセス署名と共に使用できる、テーブルで指定された保存されているアクセス ポリシーの詳細を返します。

get_table_acl(table_name, timeout=None)

パラメーター

table_name
str
必須

既存のテーブルの名前。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

テーブルに関連付けられているアクセス ポリシーのディクショナリ。

の戻り値の型 :

get_table_service_properties

ログ記録、分析、CORS ルールなど、ストレージ アカウントの Table サービスのプロパティを取得します。

get_table_service_properties(timeout=None)

パラメーター

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

Table サービスのプロパティです。

の戻り値の型 :

get_table_service_stats

Table Service のレプリケーションに関連する統計情報を取得します。 これは、ストレージ アカウントに対して読み取りアクセス geo 冗長レプリケーションが有効になっている場合にのみ使用できます。

地理冗長レプリケーションでは、Azure ストレージによって 2 か所でデータの持続性が維持されます。 両方の場所で、Azure ストレージは継続的にデータの複数の正常なレプリカを維持します。 データの読み取り、作成、更新、または削除を行う場所は、1 次ストレージ アカウント拠点です。 プライマリの場所は、Azure Management Azure クラシック ポータル (米国中北部など) を使用してアカウントを作成するときに選択したリージョンに存在します。 データのレプリケート先の場所が、2 次拠点です。 2 次拠点は 1 次拠点の場所に基づいて自動的に決められ、1 次拠点と同じ地域にある 2 つ目のデータ センター内に設定されます。 読み取りアクセスの地理冗長レプリケーションがストレージ アカウントで有効な場合は、2 次拠点から読み取り専用アクセスを使用できます。

get_table_service_stats(timeout=None)

パラメーター

timeout
int
既定値: None

timeout パラメーターは、秒単位で表されます。

戻り値

Table サービスの統計情報です。

の戻り値の型 :

insert_entity

テーブルに新しいエンティティを挿入します。 PartitionKey と RowKey が同じエンティティが既に存在する場合は、 をスローします。

テーブルにエンティティを挿入する場合は、PartitionKey および RowKey システム プロパティの値を指定する必要があります。 これらのプロパティがプライマリ キーを構成します。これらのプロパティはテーブル内で一意である必要があります。 PartitionKey と RowKey の両方の値は文字列値である必要があります。各キー値のサイズは最大 64 KB です。 キー値は正規の順序で並べ替えられるため、キー値に整数値を使用している場合は、整数から固定幅文字列に変換する必要があります。 たとえば、適切な並べ替えを行うには、値 1 を 0000001 に変換する必要があります。

insert_entity(table_name, entity, timeout=None)

パラメーター

table_name
str
必須

エンティティを挿入するテーブルの名前。

entity
dict または <xref:azure.storage.table.models.Entity>
必須

挿入するエンティティ。 dict またはエンティティ オブジェクトを指定できます。 PartitionKey と RowKey を含む必要があります。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

挿入されたエンティティの etag。

の戻り値の型 :

str

insert_or_merge_entity

テーブルにエンティティが存在する場合はマージし、存在しない場合は新しいエンティティを挿入します。

insert_or_merge_entityを使用してエンティティをマージする場合、要求でエンティティが定義または含まれていない場合、前のエンティティのすべてのプロパティが保持されます。

insert_or_merge_entity(table_name, entity, timeout=None)

パラメーター

table_name
str
必須

エンティティを挿入またはマージするテーブルの名前。

entity
dict または <xref:azure.storage.table.models.Entity>
必須

挿入またはマージするエンティティ。 dict またはエンティティ オブジェクトを指定できます。 PartitionKey と RowKey を含む必要があります。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

エンティティの etag。

の戻り値の型 :

str

insert_or_replace_entity

テーブルにエンティティが存在する場合は置換し、存在しない場合は新しいエンティティを挿入します。 この操作は、エンティティを挿入 (insert) または更新 (update) できるため、"upsert" 操作とも呼ばれます。

insert_or_replace_entityを使用してエンティティを置き換える場合、新しいエンティティでエンティティが定義されていない場合は、前のエンティティのすべてのプロパティが削除されます。

insert_or_replace_entity(table_name, entity, timeout=None)

パラメーター

table_name
str
必須

エンティティを挿入または置換するテーブルの名前。

entity
dict または <xref:azure.storage.table.models.Entity>
必須

挿入または置換するエンティティ。 dict またはエンティティ オブジェクトを指定できます。 PartitionKey と RowKey を含む必要があります。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

エンティティの etag。

の戻り値の型 :

str

list_tables

テーブルを一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従い、すべてのテーブルが返されるか、num_resultsに達すると停止します。

num_resultsを指定し、アカウントにテーブルの数を超えるテーブルがある場合、ジェネレーターは完了するとnext_markerフィールドが設定されます。 より多くの結果が必要な場合は、このマーカーを使用して新しいジェネレーターを作成できます。

list_tables(num_results=None, marker=None, timeout=None)

パラメーター

num_results
int
既定値: None

返されるテーブルの最大数。

marker
<xref:obj>
既定値: None

不透明な継続オブジェクト。 この値は、前のジェネレーター オブジェクトの next_marker フィールドから取得できますnum_resultsが指定され、そのジェネレーターが結果の列挙を完了した場合です。 指定した場合、このジェネレーターは、前のジェネレーターが停止したポイントから結果の返しを開始します。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。 この関数は、サービスに対して複数の呼び出しを行う場合があり、その場合、指定されたタイムアウト値が個々の呼び出しに適用されます。

戻り値

オブジェクトを生成する <xref:azure.cosmosdb.table.common.models.table.Table> ジェネレーター。

の戻り値の型 :

merge_entity

エンティティのプロパティをマージして、既存のエンティティを更新します。 エンティティが存在しない場合は をスローします。

この操作は、update_entity操作と同様に既存のエンティティを置き換えません。 プロパティは、merge_entityでは削除できません。

null 値を持つプロパティはすべて無視されます。 その他のプロパティはすべて更新または追加されます。

merge_entity(table_name, entity, if_match='*', timeout=None)

パラメーター

table_name
str
必須

マージするエンティティを含むテーブルの名前。

entity
dict または <xref:azure.storage.table.models.Entity>
必須

マージするエンティティ。 dict またはエンティティ オブジェクトを指定できます。 PartitionKey と RowKey を含む必要があります。

if_match
str
既定値: *

クライアントでは、オプティミスティック コンカレンシーを目的としてサービスによって維持される ETag と比較するために、要求でエンティティの ETag を指定する場合があります。 マージ操作は、クライアントによって送信された ETag がサーバーによって管理されている値と一致する場合にのみ実行されます。これは、エンティティがクライアントによって取得されてから変更されていないことを示します。 無条件マージを強制するには、If-Matchワイルドカード文字 (*) を設定します。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

エンティティの etag。

の戻り値の型 :

str

query_entities

指定したテーブル内のエンティティを一覧表示するジェネレーターを返します。 ジェネレーターは、サービスによって返された継続トークンに遅れて従い、すべてのエンティティが返されるか、num_resultsに達したときに停止します。

num_resultsが指定され、アカウントに含まれるエンティティの数がその数を超える場合、ジェネレーターは完了するとnext_markerフィールドが設定されます。 より多くの結果が必要な場合は、このマーカーを使用して新しいジェネレーターを作成できます。

query_entities(table_name, filter=None, select=None, num_results=None, marker=None, accept='application/json;odata=minimalmetadata', property_resolver=None, timeout=None)

パラメーター

table_name
str
必須

クエリを実行するテーブルの名前。

filter
str
既定値: None

指定したフィルターを満たすエンティティのみを返します。 $filter文字列内では、15 個以下の個別比較が許可されていないことに注意してください。 フィルターの構築の詳細については、「」を参照してください http://msdn.microsoft.com/en-us/library/windowsazure/dd894031.aspx

select
str
既定値: None

セットからエンティティの目的のプロパティのみを返します。

num_results
int
既定値: None

返すエンティティの最大数。

marker
<xref:obj>
既定値: None

不透明な継続オブジェクト。 この値は、前のジェネレーター オブジェクトのnext_marker フィールドから取得できますmax_results指定され、そのジェネレーターが結果の列挙を完了した場合です。 指定した場合、このジェネレーターは、前のジェネレーターが停止したポイントから結果の返しを開始します。

accept
str
既定値: application/json;odata=minimalmetadata

応答ペイロードの受け入れられたコンテンツの種類を指定します。 指定できる値については、「<xref:azure.storage.table.models.TablePayloadFormat>」を参照してください。

property_resolver
<xref:func>(<xref:pk>, <xref:rk>, <xref:prop_name>, <xref:prop_value>, <xref:service_edm_type>)
既定値: None

サービスによって返された場合、パーティション キー、行キー、プロパティ名、プロパティ値、およびプロパティ EdmType を指定した関数は、プロパティの EdmType を返します。 accept が JSON_NO_METADATA に設定されている場合に一般的に使用されます。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。 この関数は、サービスに対して複数の呼び出しを行う場合があり、その場合、指定されたタイムアウト値が個々の呼び出しに適用されます。

戻り値

オブジェクトを生成する <xref:azure.storage.table.models.Entity> ジェネレーター。

の戻り値の型 :

set_table_acl

Shared Access Signature で使用できるテーブルの格納されたアクセス ポリシーを設定します。

テーブルのアクセス許可を設定すると、既存のアクセス許可が置き換えられます。 テーブルのアクセス許可を更新するには、 を呼び出 get_table_acl して、テーブルに関連付けられているすべてのアクセス ポリシーをフェッチし、変更するアクセス ポリシーを変更してから、更新を実行するデータの完全なセットでこの関数を呼び出します。

保存されているアクセス ポリシーをテーブルに設定したときには、有効になるまでに最大で 30 秒かかる場合があります。 この間、格納されているアクセス ポリシーに関連付けられている共有アクセス署名は、アクセス ポリシーがアクティブになるまで を <xref:azure.cosmosdb.table.tableservice.AzureHttpError> スローします。

set_table_acl(table_name, signed_identifiers=None, timeout=None)

パラメーター

table_name
str
必須

既存のテーブルの名前。

signed_identifiers
dict(str, AccessPolicy)
既定値: None

テーブルに関連付けるアクセス ポリシーのディクショナリ。 ディクショナリには、最大 5 つの要素を含めることができます。 空のディクショナリを使用すると、サービスに設定されているアクセス ポリシーがクリアされます。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

set_table_service_properties

Azure Storage Analyticsを含む、ストレージ アカウントの Table サービスのプロパティを設定します。 要素 (ログ記録など) が None のままの場合、その機能に対するサービスの既存の設定は保持されます。 Azure Storage Analyticsの詳細については、「」を参照してくださいhttps://msdn.microsoft.com/en-us/library/azure/hh343270.aspx

set_table_service_properties(logging=None, hour_metrics=None, minute_metrics=None, cors=None, timeout=None)

パラメーター

logging
Logging
既定値: None

ログ設定では、要求ログが提供されます。

hour_metrics
Metrics
既定値: None

時間メトリック設定では、API 別にグループ化された要求統計の概要が、テーブルの時間単位の集計で示されます。

minute_metrics
Metrics
既定値: None

分単位のメトリック設定では、テーブルの 1 分ごとの要求統計が提供されます。

cors
list(CorsRule)
既定値: None

リストには、最大 5 つの CorsRule 要素を含めることができます。 空のリストを指定すると、すべての CORS ルールが削除され、サービスに対して CORS が無効になります。 CORS ルールと評価ロジックの詳細については、「https://msdn.microsoft.com/en-us/library/azure/dn535601.aspx」を参照してください。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

update_entity

テーブル内の既存のエンティティを更新します。 エンティティが存在しない場合は をスローします。 update_entity操作はエンティティ全体を置き換え、プロパティの削除に使用できます。

update_entity(table_name, entity, if_match='*', timeout=None)

パラメーター

table_name
str
必須

更新するエンティティを含むテーブルの名前。

entity
dict または <xref:azure.storage.table.models.Entity>
必須

更新するエンティティ。 dict またはエンティティ オブジェクトを指定できます。 PartitionKey と RowKey を含む必要があります。

if_match
str
既定値: *

クライアントでは、オプティミスティック コンカレンシーを目的としてサービスによって維持される ETag と比較するために、要求でエンティティの ETag を指定する場合があります。 更新操作は、クライアントから送信された ETag がサーバーで維持される値と一致した場合にのみ実行されます。これは、エンティティがクライアントで取得されてから変更されていないことを示します。 無条件更新を強制するには、If-Matchをワイルドカード文字 (*) に設定します。

timeout
int
既定値: None

サーバーのタイムアウト (秒単位)。

戻り値

エンティティの etag。

の戻り値の型 :

str