#sql-query #automation #processor #automaat #statement #postgresql #json

automaat-processor-sql-query

Automaat自动化工具的SQL查询处理器

1个不稳定版本

0.1.0 2019年6月20日

#10 in #automaat

MIT/Apache

31KB
430

Automaat处理器:SQL查询

🚧 开发中 🚧


lib.rs:

一个用于执行SQL查询的Automaat处理器。

此处理器允许您运行SQL查询,并以JSON对象的形式返回查询结果。

返回的JSON对象包含返回的列名作为键,行值作为JSON值。

目前,该处理器仅支持Postgres连接,并且仅支持SELECT语句。并非所有SQL类型都受支持,但最常见的类型都受支持,如果需要,还可以添加新的类型。

将此处理器与“JSON编辑器”处理器结合使用,您可以在向用户展示之前转换返回的数据。

示例

查询数据库中的多个记录,包含不同类型的多个列。

#
#
#
#
use automaat_core::{Context, Processor};
use automaat_processor_sql_query::SqlQuery;
use url::Url;
use serde_json::{from_str, json, Value};

let context = Context::new()?;
let database_url = Url::parse("postgres://[email protected]")?;

let processor = SqlQuery {
    statement: "SELECT id, name FROM users LIMIT 2".to_owned(),
    url: database_url,
};

let output = processor.run(&context)?.expect("Some");
let expect = json!([{ "id" :1, "name": "Bart" }, { "id": 2, "name": "Lisa" }]);

assert_eq!(from_str::<Value>(&output)?, expect);
#

包功能

  • juniper – 创建用于基于GraphQL请求/响应的对象集。

依赖关系

~13–23MB
~379K SLoC