第五章 Python SDK

5.1 安装与引入

Python SDK为单文件模块,将 sxdb_client.py 复制到项目目录即可使用。无需安装任何第三方依赖,仅使用Python标准库socket和json模块。

from sxdb_client import SxdbClient, SxdbResultSet

5.2 客户端核心API

方法

参数

说明

connect()

-

连接服务器

login(user, pass)

用户名、密码

认证登录

open_db(db)

数据库名

打开数据库

execute(db, sql, params)

库名、SQL、参数

执行DDL/DML

query(db, sql, params)

库名、SQL、参数

查询数据

batch(db, statements)

库名、SQL列表

批量执行

insert(db, table, data)

库名、表名、字段字典

插入一行

select(db, table, ...)

多个查询参数

简化查询

close()

-

关闭连接

5.3 基本使用示例

from sxdb_client import SxdbClient

使用 context manager 自动管理连接

with SxdbClient("127.0.0.1", 31111) as client:

登录

client.login("admin", "admin123")

client.open_db("myapp")

创建表

client.execute("myapp",

"CREATE TABLE IF NOT EXISTS orders("

"id INTEGER PRIMARY KEY AUTOINCREMENT, "

"product TEXT, quantity INTEGER, total REAL)")

插入数据 (便捷方法)

client.insert("myapp", "orders", {

"product": "电子书",

"quantity": 3,

"total": 89.7

})

查询数据 (便捷方法)

result = client.select("myapp", "orders",

columns="*", where="quantity > 1",

order_by="total DESC", limit=10)

解析结果

rs = result["data"]

print(rs["columns"]) # ["id","product","quantity","total"]

for row in rs["rows"]:

print(row)

client.close_db("myapp")

代码5-1 Python 基本使用示例

5.4 高级用法:批量操作

from sxdb_client import SxdbClient, SxdbResultSet

client = SxdbClient("127.0.0.1", 31111)

client.connect()

client.login("admin", "admin123")

批量执行多条SQL

result = client.batch("myapp", [

{"sql": "INSERT INTO orders(product,quantity,total) VALUES(?,?,?)",

"params": ["手机", 1, 4999]},

{"sql": "INSERT INTO orders(product,quantity,total) VALUES(?,?,?)",

"params": ["耳机", 2, 198]},

{"sql": "INSERT INTO orders(product,quantity,total) VALUES(?,?,?)",

"params": ["充电器", 1, 129]},

])

print("Batch result:", result)

使用 SxdbResultSet 封装结果

raw = client.query("myapp", "SELECT * FROM orders WHERE total > 100")

rs = SxdbResultSet(raw)

for row in rs:

print(f" {row['product']}: {row['total']:.2f}")

client.close()

代码5-2 Python 批量操作与结果封装

results matching ""

    No results matching ""