다음을 통해 공유


TableServiceClient 클래스

계정 수준에서 Table Service와 상호 작용하는 클라이언트입니다.

이 클라이언트는 계정 속성을 검색 및 구성하고 계정 내에서 테이블을 나열, 만들기 및 삭제하는 작업을 제공합니다. 특정 테이블과 관련된 작업의 경우 함수를 사용하여 이 엔터티에 대한 클라이언트를 get_table_client 검색할 수 있습니다.

자격 증명에서 TablesBaseClient를 만듭니다.

상속
azure.data.tables._base_client.TablesBaseClient
TableServiceClient

생성자

TableServiceClient(endpoint: str, *, credential: AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs)

매개 변수

endpoint
str
필수

테이블 서비스 엔드포인트의 URL입니다. URL 경로에 포함된 다른 엔터티(예: 테이블)는 삭제됩니다. 이 URL은 선택적으로 SAS 토큰으로 인증할 수 있습니다.

credential
AzureNamedKeyCredential 또는 AzureSasCredential 또는 TokenCredential 또는 None

인증할 자격 증명입니다. 계정 URL에 이미 SAS 토큰이 있는 경우 선택 사항입니다. 값은 AzureNamedKeyCredential(azure-core), AzureSasCredential(azure-core) 또는 azure-identity의 TokenCredential 구현 중 하나일 수 있습니다.

api_version
str

요청에 사용할 Storage API 버전입니다. 기본값은 '2019-02-02'입니다. 이전 버전으로 설정하면 기능 호환성이 저하될 수 있습니다.

endpoint
str
필수

Azure Tables 계정에 대한 URL입니다.

credential
AzureNamedKeyCredential 또는 AzureSasCredential 또는 TokenCredential 또는 None

인증할 자격 증명입니다. 계정 URL에 이미 SAS 토큰이 있는 경우 선택 사항입니다. 값은 AzureNamedKeyCredential(azure-core), AzureSasCredential(azure-core) 또는 azure-identity의 TokenCredential 구현 중 하나일 수 있습니다.

api_version
str 또는 None

이 요청에 사용할 작업의 버전을 지정합니다. 기본값은 "2019-02-02"입니다.

예제

공유 액세스 키에서 TableServiceClient 인증


   from azure.data.tables import TableServiceClient
   from azure.core.credentials import AzureNamedKeyCredential, AzureSasCredential

   # Create a SAS token to use for authentication of a client
   from azure.data.tables import generate_account_sas, ResourceTypes, AccountSasPermissions

   print("Account name: {}".format(self.account_name))
   credential = AzureNamedKeyCredential(self.account_name, self.access_key)  # type: ignore[arg-type]
   sas_token = generate_account_sas(
       credential,
       resource_types=ResourceTypes(service=True),
       permission=AccountSasPermissions(read=True),
       expiry=datetime.utcnow() + timedelta(hours=1),
   )

   with TableServiceClient(
       endpoint=self.endpoint, credential=AzureSasCredential(sas_token)
   ) as token_auth_table_service:
       properties = token_auth_table_service.get_service_properties()
       print("Shared Access Signature: {}".format(properties))

공유 계정 키에서 TableServiceClient 인증


   from azure.data.tables import TableServiceClient
   from azure.core.credentials import AzureNamedKeyCredential

   credential = AzureNamedKeyCredential(self.account_name, self.access_key)  # type: ignore[arg-type]
   with TableServiceClient(endpoint=self.endpoint, credential=credential) as table_service:
       properties = table_service.get_service_properties()
       print("Shared Key: {}".format(properties))

변수

account_name
str

테이블 계정의 이름입니다.

url
str

테이블 계정에 대한 전체 URL입니다.

메서드

close

이 메서드는 클라이언트에서 연 소켓을 닫는 것입니다. 컨텍스트 관리자와 함께 를 사용할 때는 사용할 필요가 없습니다.

create_table

현재 계정 아래에 새 테이블을 만듭니다.

create_table_if_not_exists

현재 존재하지 않는 경우 새 테이블을 만듭니다. 테이블이 현재 있는 경우 현재 테이블이 반환됩니다.

delete_table

현재 계정 아래의 테이블을 삭제합니다. 지정된 테이블을 찾을 수 없으면 오류가 발생하지 않습니다.

from_connection_string

연결 문자열에서 TableServiceClient를 만듭니다.

get_service_properties

분석 및 CORS(원본 간 리소스 공유) 규칙에 대한 속성을 포함하여 계정의 Table Service 속성을 가져옵니다.

get_service_stats

테이블 서비스에 대한 복제와 관련된 통계를 검색합니다. 계정에 대해 읽기 액세스 지역 중복 복제를 사용하는 경우에만 보조 위치 엔드포인트에서 사용할 수 있습니다.

get_table_client

지정된 테이블과 상호 작용할 클라이언트를 가져옵니다.

테이블이 아직 필요하지 않습니다.

list_tables

지정된 계정의 테이블을 쿼리합니다.

query_tables

지정된 계정의 테이블을 쿼리합니다.

set_service_properties

분석 및 CORS(원본 간 리소스 공유) 규칙에 대한 속성을 포함하여 계정의 Table Service 엔드포인트에 대한 속성을 설정합니다.

close

이 메서드는 클라이언트에서 연 소켓을 닫는 것입니다. 컨텍스트 관리자와 함께 를 사용할 때는 사용할 필요가 없습니다.

close() -> None

create_table

현재 계정 아래에 새 테이블을 만듭니다.

create_table(table_name: str, **kwargs) -> TableClient

매개 변수

table_name
str
필수

테이블 이름입니다.

반환

TableClient

반환 형식

예외

예제

TableServiceClient 개체에서 테이블 만들기


   with TableServiceClient.from_connection_string(self.connection_string) as table_service_client:
       try:
           table_client = table_service_client.create_table(table_name=self.table_name)
           print("Created table {}!".format(table_client.table_name))
       except ResourceExistsError:
           print("Table already exists")

create_table_if_not_exists

현재 존재하지 않는 경우 새 테이블을 만듭니다. 테이블이 현재 있는 경우 현재 테이블이 반환됩니다.

create_table_if_not_exists(table_name: str, **kwargs) -> TableClient

매개 변수

table_name
str
필수

테이블 이름입니다.

반환

TableClient

반환 형식

예외

예제

TableServiceClient 개체에서 테이블이 없는 경우 테이블 만들기


   with TableServiceClient.from_connection_string(self.connection_string) as table_service_client:
       table_client = table_service_client.create_table_if_not_exists(table_name=self.table_name)
       print("Table name: {}".format(table_client.table_name))

delete_table

현재 계정 아래의 테이블을 삭제합니다. 지정된 테이블을 찾을 수 없으면 오류가 발생하지 않습니다.

delete_table(table_name: str, **kwargs) -> None

매개 변수

table_name
str
필수

테이블 이름입니다.

반환

없음

예외

예제

TableServiceClient 개체에서 테이블 삭제


   with TableServiceClient.from_connection_string(self.connection_string) as table_service_client:
       table_service_client.delete_table(table_name=self.table_name)
       print("Deleted table {}!".format(self.table_name))

from_connection_string

연결 문자열에서 TableServiceClient를 만듭니다.

from_connection_string(conn_str: str, **kwargs) -> TableServiceClient

매개 변수

conn_str
str
필수

Azure Storage 또는 Cosmos 계정에 대한 연결 문자열입니다.

반환

Table Service 클라이언트입니다.

반환 형식

예제

connection_string TableServiceClient 인증


   from azure.data.tables import TableServiceClient

   with TableServiceClient.from_connection_string(conn_str=self.connection_string) as table_service:
       properties = table_service.get_service_properties()
       print("Connection String: {}".format(properties))

get_service_properties

분석 및 CORS(원본 간 리소스 공유) 규칙에 대한 속성을 포함하여 계정의 Table Service 속성을 가져옵니다.

get_service_properties(**kwargs) -> Dict[str, object]

반환

서비스 속성 사전

반환 형식

예외

get_service_stats

테이블 서비스에 대한 복제와 관련된 통계를 검색합니다. 계정에 대해 읽기 액세스 지역 중복 복제를 사용하는 경우에만 보조 위치 엔드포인트에서 사용할 수 있습니다.

get_service_stats(**kwargs) -> Dict[str, object]

반환

서비스 통계 사전

반환 형식

예외

azure.core.exceptions.HttpResponseError:

get_table_client

지정된 테이블과 상호 작용할 클라이언트를 가져옵니다.

테이블이 아직 필요하지 않습니다.

get_table_client(table_name: str, **kwargs) -> TableClient

매개 변수

table_name
str
필수

테이블 이름

반환

TableClient 개체입니다.

반환 형식

list_tables

지정된 계정의 테이블을 쿼리합니다.

list_tables(**kwargs) -> ItemPaged[TableItem]

매개 변수

results_per_page
int

반환된 ItemPaged의 페이지당 테이블 수

반환

다음의 반복기 TableItem

반환 형식

예외

예제

스토리지 계정의 모든 테이블 나열


   # List all the tables in the service
   list_tables = table_service.list_tables()
   print("Listing tables:")
   for table in list_tables:
       print("\t{}".format(table.name))

query_tables

지정된 계정의 테이블을 쿼리합니다.

query_tables(query_filter: str, **kwargs) -> ItemPaged[TableItem]

매개 변수

query_filter
str
필수

특정 테이블을 반환할 필터를 지정합니다.

results_per_page
int

ItemPaged 반환의 페이지당 테이블 수

parameters
dict[str, Any]

추가적인 사용자 정의 매개 변수를 사용하여 쿼리의 서식을 지정하기 위한 사전

반환

다음의 반복기 TableItem

반환 형식

예외

예제

스토리지 계정의 테이블 쿼리


   table_name = "mytable1"
   name_filter = "TableName eq '{}'".format(table_name)
   queried_tables = table_service.query_tables(name_filter)

   print("Queried_tables")
   for table in queried_tables:
       print("\t{}".format(table.name))

set_service_properties

분석 및 CORS(원본 간 리소스 공유) 규칙에 대한 속성을 포함하여 계정의 Table Service 엔드포인트에 대한 속성을 설정합니다.

set_service_properties(**kwargs) -> None

매개 변수

analytics_logging
TableAnalyticsLogging

분석 속성

hour_metrics
TableMetrics

시간 수준 메트릭

minute_metrics
TableMetrics

분 수준 메트릭

cors
list[TableCorsRule]

원본 간 리소스 공유 규칙

반환

없음

예외

특성

api_version

요청에 사용되는 Storage API의 버전입니다.

반환

Storage API 버전입니다.

url

사용되는 경우 SAS 토큰을 포함하여 이 엔터티에 대한 전체 엔드포인트 URL입니다.

이는 기본 엔드포인트이거나 현재 <xref:azure.data.tables.location_mode>에 따라 보조 엔드포인트일 수 있습니다.

반환

사용되는 경우 SAS 토큰을 포함한 전체 엔드포인트 URL입니다.

반환 형식

str