SQL存储#

class langchain_community.storage.sql.SQLStore(*, namespace: str, db_url: str | Path | None = None, engine: Engine | AsyncEngine | None = None, engine_kwargs: Dict[str, Any] | None = None, async_mode: bool | None = None)[来源]#

BaseStore 接口,用于操作 SQL 数据库。

示例

创建一个SQLStore实例并对其进行操作:

from langchain_community.storage import SQLStore

# Instantiate the SQLStore with the root path
sql_store = SQLStore(namespace="test", db_url="sqlite://:memory:")

# Set values for keys
sql_store.mset([("key1", b"value1"), ("key2", b"value2")])

# Get values for keys
values = sql_store.mget(["key1", "key2"])  # Returns [b"value1", b"value2"]

# Delete keys
sql_store.mdelete(["key1"])

# Iterate over keys
for key in sql_store.yield_keys():
    print(key)

方法

__init__(*, namespace[, db_url, engine, ...])

acreate_schema()

amdelete(keys)

异步删除给定的键及其关联的值。

amget(keys)

异步获取与给定键关联的值。

amset(key_value_pairs)

异步设置给定键的值。

ayield_keys(*[, prefix])

异步获取与给定前缀匹配的键的迭代器。

create_schema()

drop()

mdelete(keys)

删除给定的键及其关联的值。

mget(keys)

获取与给定键关联的值。

mset(key_value_pairs)

设置给定键的值。

yield_keys(*[, prefix])

获取一个迭代器,用于遍历与给定前缀匹配的键。

Parameters:
  • 命名空间 (字符串)

  • db_url (str | Path | None)

  • engine (Engine | AsyncEngine | None)

  • engine_kwargs (Dict[str, Any] | None)

  • async_mode (bool | None)

__init__(*, namespace: str, db_url: str | Path | None = None, engine: Engine | AsyncEngine | None = None, engine_kwargs: Dict[str, Any] | None = None, async_mode: bool | None = None)[来源]#
Parameters:
  • 命名空间 (字符串)

  • db_url (str | Path | None)

  • engine (Engine | AsyncEngine | None)

  • engine_kwargs (Dict[str, Any] | None)

  • async_mode (bool | None)

async acreate_schema() None[来源]#
Return type:

async amdelete(keys: Sequence[str]) None[source]#

异步删除给定的键及其关联的值。

Parameters:

keys (Sequence[K]) – 要删除的键序列。

Return type:

async amget(keys: Sequence[str]) List[bytes | None][来源]#

异步获取与给定键关联的值。

Parameters:

keys (Sequence[K]) – 一个键的序列。

Returns:

与键相关联的一系列可选值。 如果未找到键,则对应的值将为None。

Return type:

列表[字节 | 无]

async amset(key_value_pairs: Sequence[Tuple[str, bytes]]) None[source]#

异步设置给定键的值。

Parameters:

key_value_pairs (Sequence[Tuple[K, V]]) – 一个键值对的序列。

Return type:

async ayield_keys(*, prefix: str | None = None) AsyncIterator[str][source]#

异步获取一个迭代器,用于遍历与给定前缀匹配的键。

Parameters:

prefix (str) – 要匹配的前缀。

Yields:

Iterator[K | str] – 一个遍历与给定前缀匹配的键的迭代器。 此方法允许返回一个遍历 K 或 str 的迭代器,具体取决于给定存储的更有意义的方式。

Return type:

AsyncIterator[str]

create_schema() None[source]#
Return type:

drop() None[来源]#
Return type:

mdelete(keys: Sequence[str]) None[来源]#

删除给定的键及其关联的值。

Parameters:

keys (Sequence[K]) – 要删除的键序列。

Return type:

mget(keys: Sequence[str]) List[bytes | None][来源]#

获取与给定键关联的值。

Parameters:

keys (Sequence[K]) – 一个键的序列。

Returns:

与键相关联的一系列可选值。 如果未找到键,则对应的值将为None。

Return type:

列表[字节 | 无]

mset(key_value_pairs: Sequence[Tuple[str, bytes]]) None[source]#

为给定的键设置值。

Parameters:

key_value_pairs (Sequence[Tuple[K, V]]) – 一个键值对的序列。

Return type:

yield_keys(*, prefix: str | None = None) Iterator[str][source]#

获取一个迭代器,用于遍历与给定前缀匹配的键。

Parameters:

prefix (str) – 要匹配的前缀。

Yields:

Iterator[K | str] – 一个遍历与给定前缀匹配的键的迭代器。 此方法允许返回一个遍历 K 或 str 的迭代器,具体取决于给定存储的更有意义的方式。

Return type:

迭代器[str]