🚀 Java 翻译
本项目提供了一系列与数据库交互的接口,可执行标准 SQL、SPASQL、SPARQL 查询,支持 Virtuoso AI 功能,还能进行数据库元数据查询,为数据库操作提供了便捷的方式。
🚀 快速开始
本项目提供了多种与数据库交互的接口,涵盖了标准 SQL、SPASQL、SPARQL 查询,以及数据库元数据查询等功能,以下为各功能的详细信息。
✨ 主要特性
- 执行标准 SQL 查询:通过
jdbc_query_database
接口,可以执行任意的标准 SQL 查询,并返回结果。支持 JSON、Markdown 表格和 JSON Lines 格式。
- SPASQL 查询:针对 Virtuoso 数据库的特殊需求,提供了
jdbc_spasql_query
接口,用于执行 SPASQL(SQL/SPARQL 混合)查询,并返回结果。支持设置最大行数和超时时间。
- SPARQL 查询:通过
jdbc_sparql_query
接口,可以执行标准的 SPARQL 查询,并根据指定格式返回结果。默认格式为 JSON。
- Virtuoso AI 支持:借助 Virtuoso 数据库的特殊功能,提供了
jdbc_virtuoso_support_ai
接口,用于调用 AI 支持函数。支持自定义提示和 API 密钥。
- 数据库元数据查询:
- 通过
jdbc_get_databases
接口获取所有可用数据库。
- 通过
jdbc_get_tables
接口获取指定数据库中的表信息。
- 通过
jdbc_get_columns
接口获取指定表的列信息。
💻 使用示例
基础用法
执行标准 SQL 查询(JSON 格式)
curl -X POST "http://localhost:1234/api/v1/java" \
-H "Content-Type: application/json" \
-d '{"method":"jdbc_query_database","params":{"query":"SELECT * FROM users LIMIT 5"}}'
执行 SPASQL 查询
curl -X POST "http://localhost:1234/api/v1/java" \
-H "Content-Type: application/json" \
-d '{"method":"jdbc_spasql_query","params":{"query":"SELECT TOP 5 * FROM users"}}'
调用 Virtuoso AI 支持
curl -X POST "http://localhost:1234/api/v1/java" \
-H "Content-Type: application/json" \
-d '{"method":"jdbc_virtuoso_support_ai","params":{"prompt":"生成一个用户数据表的 SQL 创建语句"}}'
高级用法
可根据不同接口的参数设置,实现更灵活的查询和操作,如设置最大行数、超时时间、自定义提示和 API 密钥等。
📚 详细文档
参数说明
公共参数
属性 |
详情 |
user |
数据库用户名,默认为 demo 。 |
password |
数据库密码,默认为 demo 。 |
url |
数据库连接 URL,格式为 jdbc:h2:mem:default ,默认为 jdbc:h2:mem:default 。 |
特殊接口参数
jdbc_spasql_query
属性 |
详情 |
query |
SPASQL 查询语句。 |
max_rows |
最大返回行数,默认为 20。 |
timeout |
查询超时时间(毫秒),默认为 30000。 |
jdbc_sparql_query
属性 |
详情 |
query |
SPARQL 查询语句。 |
format |
结果格式,支持 json 、xml 、csv 等,默认为 json 。 |
timeout |
查询超时时间(毫秒),默认为 30000。 |
jdbc_virtuoso_support_ai
属性 |
详情 |
prompt |
AI 函数提示文本。 |
api_key |
可选的 API 密钥,默认为 none 。 |
元数据接口
获取所有数据库
curl -X POST "http://localhost:1234/api/v1/java" \
-H "Content-Type: application/json" \
-d '{"method":"jdbc_get_databases"}'
获取指定数据库的表信息
curl -X POST "http://localhost:1234/api/v1/java" \
-H "Content-Type: application/json" \
-d '{"method":"jdbc_get_tables","params":{"database":"your_database"}}'
获取指定表的列信息
curl -X POST "http://localhost:1234/api/v1/java" \
-H "Content-Type: application/json" \
-d '{"method":"jdbc_get_columns","params":{"table":"your_table"}}'