A flask blueprint providing a read-lny API for querying RDBMS
项目描述
apisql
apisql 是一个flask blueprint,它提供通过直接SQL查询访问DBMS的只读API
端点
/query
以json格式返回查询结果。
可以发送的查询参数
- query: 在DB上执行的SQL查询。查询可以是纯文本或base64编码。
- num_rows: 返回的最大行数。如果没有指定,将返回配置中定义的数量、环境变量
APISQL__MAX_ROWS
中定义的数量或100。 - page_size: 分页时'页面'的大小。默认情况下将使用
num_rows
,并且无论如何页面大小不会超过num_rows
。 - page: 要获取的页面,从页面0开始
/download
以csv、xls或xlsx格式下载查询结果。
可以发送的查询参数
-
query: 在DB上执行的SQL查询。查询可以是纯文本或base64编码。
-
format:
csv
或xlsx
。默认为csv
。 -
filename: 要下载的文件的文件名,不包括扩展名。默认为
query-results
。 -
headers: 输出文件的标题列表,以分号分隔。标题应与查询中出现的字段名称匹配。标题可能包含一个或多个修饰符,修饰符位于冒号之后。目前支持的修饰符有
number
,将数字值转换为字符串yesno
,将布尔值转换为“是”/“否”。以逗号分隔
,将字符串数组转换为以逗号分隔的字符串列表。最后,可以通过指定字段名称在查询输出中的不同字段中获取列的内容,字段名称位于<
字符之后。
示例:
财政年度:number<fiscal_year;闰年:yesno<0;
示例:对于以下SQL
select employee_name as "Employee Name", employee_salary as "Salary", is_manager as "Managerial role?" from employees
headers
可以指定为员工姓名;管理角色?:yesno;薪水:number
。
配置
此蓝图的相关Flask配置
from apisql import apisql_blueprint
app.register_blueprint(
apisql_blueprint(connection_string='psql://host/database', max_rows=1000, debug=False),
url_prefix='/api/db/'
)
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
apisql-0.6.1.tar.gz (11.0 kB 查看哈希值)
构建分发
apisql-0.6.1-py2.py3-none-any.whl (20.1 kB 查看哈希值)
关闭
apisql-0.6.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 814f8eb129b1fe1b68647e74f1abe247409443afc1639c9af1abf7c526d3cd05 |
|
MD5 | 52cbc0ba1a4e7c071c98f840605f07e4 |
|
BLAKE2b-256 | cf479a1e504922131368c40d1073fdc18252a5f6c24344988c1617091fcf8913 |
关闭
apisql-0.6.1-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | eb1adf26df0b6e6a03b6e739fafa0b35cef67a7069d2a52b1c0ff5404fde59f3 |
|
MD5 | 159bf41d969b42852f46cb7c7392d50f |
|
BLAKE2b-256 | 94499288be6079b6b8076680fc2a20a26c08ec83f4f023f12b8bf502f8968788 |