BIRT 如何使用参数查询 MongoDB
例题描述和简单分析
MongoDB 中有集合 sample,如下所示:
{
"_id" : ObjectId("60d2d5c7dcb4a41f6bdc8936"),
"id" : 1,
"account" : "abc",
"vendor" : "amazon"
}
{
"_id" : ObjectId("60d2d5c7dcb4a41f6bdc8937"),
"id" : 2,
"account" : "abc",
"vendor" : "overstock"
}
{
"_id" : ObjectId("60d2d5c7dcb4a41f6bdc8938"),
"id" : 3,
"account" : "adf",
"vendor" : "amazon"
}
需要使用参数,查询id 域为 2 的文档,结果如下:
_id |
id |
account |
vendor |
60d2d5c7dcb4a41f6bdc8937 |
2 |
abc |
overstock |
解法及简要说明
在集算器中编写脚本p1.dfx,如下所示:
A |
|
1 |
=mongo_open("mongodb://127.0.0.1:27017/raqsoft") |
2 |
=mongo_shell@x(A1,"sample.find({\"id\":"/id/"})").fetch() |
简要说明:
设脚本参数id,值为 2
A1 通过 IP: 127.0.0.1,端口 27017,连接 mongodb server 的数据库 raqsoft,无用户名和密码。
A2 查询数据库,返回结果值,@x:执行完毕后自动关闭连接。
BIRT 集成这段代码的方法可参考:《BIRT 如何调用 SPL 脚本》。
https://www.eclipse.org/forums/index.php/t/1075897/
英文版