大家好,才是真的好。大家真的好,每天才有好消息。3月7号,在IBM Think 2019大会展示的DQL Explorer应用终于可以下载啦!
啥?你还不知道DQL Explorer做什么用的?这……我当然还是选择原谅你,并且今天再来介绍:DQL Explorer提供了一个可视化的Web界面,用来帮助管理员、开发人员和普通用户,使用DQL语言来查询Notes数据。无需编程,无需掌握开发知识,查询效率极高,查询条件会自动生成查询代码,然后可以选择嵌入到Java或LotusScript或NodeJS中使用等;查询结果还可转换为CSV和JSON等数据格式,以便统计分析等。
部署DQL Explorer
首先,DQL Explorer必须部署在IBM Domino V10或更高版本服务器上。如感兴趣,可到https://github.com/icstechsales/dql-explorer/releases网址下载dqlexplorer.nsf数据库,放置到Notes本地的Data目录,如下:
放到本地,主要是为了签名和修改ACL。签名过程前面我说了很多,反正就是使用Domino Administrator管理客户机,找到这个数据库,点击右边数据库下的签名工具。
接着就是修改ACL访问控制列表。添加一个用户作为管理员,最好具备“DQLxAuthors”或“DQLxReader”角色来执行查询工作。
再把数据库新建拷贝到服务器上。看图说话较快:
dqlexplorer.nsf拷贝到服务器上后,别犹豫,直接双击打开。
要是眼睛没花,就能看到两条文档。第一条是设置要查询的数据库所在的文件夹目录,第二个是要查询的数据库们的名称。
先编辑第一个文档。双击打开后,在Vaules中填入文件目录名称,如Sales,可以输入多个目录位置。如果要读取整个Data目录,则输入如下图一样的"/"(不带引号)。
再编辑第二个文档——原本应该是可以不填的,这样应该就是读取上一步指定目录下的所有数据库,但目前dqlexplorer.nsf似乎做不到。所以在我们的测试案例中,老老实实输入数据库的名字,这里我输入了doc.nsf,你也可以输入多个数据库名字,用逗号或换行来分割。
再把服务器上的配置改一改。其实主要是启用Domino Access服务,在里面启用数据访问。办法是,打开服务器文档(或Internet站点文档),而后找到Internet协议下的Domino Web引擎,往下拉:
拉到Domino Access 服务位置,选择“已启用服务”,在里面选择“数据”即可(多选一个日历也无妨)。
准备Notes应用
万事俱备,只欠东风。我自己根据讨论数据库模板创了一个doc.nsf数据库,并很简单地录入几条数据,你要是有自己的应用数据库,那再好不过。如下图:
这当然不够,还得开启该数据库的DQL查询功能,还记得吗?——使用命令load updall -e即可,下图使用load updall doc.nsf -e命令来进行开启doc.nsf的DQL查询:
开始查询
配置完成之后,建议重启一下http任务(tell http restart),而后输入URL地址,类似http://host/dqlexplorer.nsf/index.html地址,如下图:
咋一看是中文——那是因为我用了Chrome网页翻译,其实它只有英文,下图才是真实的界面:
是时候开始查询工作了。选择列表中的数据库(本例中只有doc),而后创建新查询,输入查询名称,选择查询表单、视图或文件夹对象,本例选的是Form表单,而后选择表单名,点击添加条件按钮,输入条件,选择要显示结果的字段……
我好像说得太多了,举一个例子,下图输入了查询名字“test”,选择了查询表单,并且表单为“主题”,之后选择了查询具体的字段“Categories”,操作符为“=”,值为“DQL”,即要查询字段“Categories”值为“DQL”的那些文档,查出来后,结果会显示这些文档的“Subject”和“Categories”字段,而后点击“Run Query”进行查询:
结果出来了:有三条文档。现在,你除了看到查询出来的文档字段外(“Subject”和“Categories”),还可以“Download in CSV”和“Download in JSON”。
dqlexplorer.nsf部署不难吧?DQL Explorer大法能产生多大能量,想象力在你脑海里,一切都无限可能。
更多精彩内容请关注微信公众号“协作者”