langchain_community.storage.sql.SQLStore

class langchain_community.storage.sql.SQLStore(*, namespace: str, db_url: Optional[Union[str, Path]] = None, engine: Optional[Union[Engine, AsyncEngine]] = None, engine_kwargs: Optional[Dict[str, Any]] = None, async_mode: Optional[bool] = None)[source]

基于SQL数据库工作的BaseStore接口。

示例

创建SQLStore实例并在其上执行操作

from langchain_rag.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, ...])

创建模式()

amdelete(keys)

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

amget(keys)

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

amset(key_value_pairs)

异步为给定的键设置值。

ayield_keys(*[, prefix])

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

创建模式()

删除()

mdelete(keys)

删除指定的键及其相关值。

mget(键)

获取与给定的键相关联的值。

mset(键值对)

为给定的键设置值。

yield_keys(*[, 前缀])

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

参数
  • namespace (str) –

  • db_url (可选[Union[str, Path]]) –

  • engine (可选[Union[Engine, AsyncEngine]]) –

  • engine_kwargs (可选[Dict[str, Any]]) –

  • async_mode (可选[bool]) –

__init__(*, namespace: str, db_url: Optional[Union[str, Path]] = None, engine: Optional[Union[Engine, AsyncEngine]] = None, engine_kwargs: Optional[Dict[str, Any]] = None, async_mode: Optional[bool] = None)[source]
参数
  • namespace (str) –

  • db_url (可选[Union[str, Path]]) –

  • engine (可选[Union[Engine, AsyncEngine]]) –

  • engine_kwargs (可选[Dict[str, Any]]) –

  • async_mode (可选[bool]) –

async acreate_schema() None[source]
返回类型

None

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

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

参数

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

返回类型

None

async amget(keys: Sequence[str]) List[Optional[bytes]][source]

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

参数

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

返回

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

返回类型

List[Optional[bytes]]

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

异步为给定的键设置值。

参数

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

返回类型

None

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

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

参数

prefix (str) – 匹配的前缀。

生成

Iterator[K | str] – 符合给定前缀的键的迭代器。此方法可以返回 K 或 str 的迭代器,具体取决于针对特定存储器的哪个更合适。

返回类型

AsyncIterator[str]

create_schema() None[源代码]
返回类型

None

drop() None[源代码]
返回类型

None

mdelete(keys: 序列[字符串]) None[源代码]

删除指定的键及其相关值。

参数

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

返回类型

None

mget(keys: 序列[字符串]) 列表[可选[字节]][源代码]

获取与给定的键相关联的值。

参数

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

返回

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

返回类型

List[Optional[bytes]]

mset(键值对: 序列[元组[字符串,字节]]) None[源代码]

为给定的键设置值。

参数

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

返回类型

None

yield_keys(*, prefix: 可选[字符串] = None) 迭代器[字符串][源代码]

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

参数

prefix (str) – 匹配的前缀。

生成

Iterator[K | str] – 符合给定前缀的键的迭代器。此方法可以返回 K 或 str 的迭代器,具体取决于针对特定存储器的哪个更合适。

返回类型

迭代器[字符串]