Skip to main content

阿里云 tablestore 的 Python Database API 2.0 连接器(支持 SDK SQL 查询中不支持的 UPDATE 和 DELETE 语句)

Project description

otssql

一款满足 Python Database API Specification v2.0 规范的 tablestore 的 SQL 版连接器。实现了官方 SDK 的 SQL 查询功能不支持的 UPDATE 语句和 DELETE 语句功能。

安装方法

pip install otssql

使用方法

使用方法与满足 Python Database API Specification v2.0 规范的其他 SQL 连接器相同。

import otssql
import ssl

# 创建 otssql 的 Connection 对象
ots_conn = otssql.connect("", "", "", "", ssl_version=ssl.PROTOCOL_TLSv1_2)

# 构造 otssql 的 Cursor 对象
ots_cursor = ots_conn.cursor(otssql.DictCursor)

# 调用 otssql 的 Cursor 对象的 execute 方法执行 SQL 语句
cnt = ots_cursor.execute("SELECT column_1 FROM table_name WHERE column_2 = 1")

# 查看获取结果行数或影响行数
print(cnt)

# 查看获取结果的描述信息
print(ots_cursor.description)

# 查看查询结果的数据集
if ots_cursor.current_result is not None:
    result = ots_cursor.fetchall()
    for row in result:
        print(row)

因为 tablestore SDK 原生不支持 SQL(不支持 UPDATEDELETE 语句),而 otssql 本质上是一个连接器而非引擎,不进行计算,所以存在如下需要注意的局限:

  • 在多次运行时,Cursor 返回的 tuple 结果中元素先后顺序不固定,建议使用 DictCursor
  • 所有 SQL 语句的查询部分, 尝试使用多元索引实现,如没有多元索引会触发报错
  • 不支持部分 SQL 语句(可尝试执行 SQL,如不支持会抛出 NotSupportError

如果你希望在 OTS 中执行复杂的 SQL 语句或希望执行不包含多元索引的查询,建议直接使用 tablestore SDK。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

otssql-0.1.0.tar.gz (26.7 kB view details)

Uploaded Source

File details

Details for the file otssql-0.1.0.tar.gz.

File metadata

  • Download URL: otssql-0.1.0.tar.gz
  • Upload date:
  • Size: 26.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/42.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/1.26.0 tqdm/4.66.1 importlib-metadata/7.0.1 keyring/24.3.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.6

File hashes

Hashes for otssql-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3c39ba0c4597d42566e415b06a25ec88bcf9aeb59fec78388d68c87bfccf2f11
MD5 f2bb5fe2da285bb185d788eb2c103665
BLAKE2b-256 b3ed7c533a5e088ffb04b1443daf9e2ec2f4c515aea5830df4e5d0f49608f374

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page