页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

3、打开smartbi报表查询的数据和直接在数据库工具(不一定基于jdbc)中查询的结果不一致,此时也可以测试通过Java调用jdbc驱动执行SQL,对比通过加载当前驱动执行SQL查询的数据是否和smartbi报表展示的一致。

操作步骤

1、检查数据库驱动

检查驱动程序存放目录是否为自定义,如果是war自带的,则跳过此步骤,如果是额外添加的数据库动态驱动jar,需要找到jar的绝对路径,注意如果是docker部署的,其jar路径不是通过linux ssh工具查看到的绝对路径,而是相对docker根路径的虚拟路径。

如下图是exe安装环境下添加的一个mysql动态驱动jar路径:

...

其中开头的/tomcat是docker路径下 Tomcat的根目录。


2、下载jsp文件放到vision文件夹

下载testjdbcdata.jsp,并将testjdbcdata.jsp文件放到vision文件夹下,不需要重启应用服务器。

(若是测试存储过程查询,下载testjdbcPro.jsp,暂不支持Oracle等带出参的存储过程)


3、访问页面执行数据库语句

执行SQL查询

浏览器访问 http://IP:PORT/smartbi/vision/testjdbcdata.jsp,在页面上填写待测试的数据库信息,其中查询SQL可选填,显示查询结果可选勾。

注:(1)IP和PORT需根据实际地址进行修改

(2)勾选显示查询结果会查询出对应的结果集,由于是直接与数据库进行交互,请尽可能减少数据量。

如果是动态驱动则需要设置驱动类目录,将步骤1 的路径填入到驱动类目录右边输入框:

...

若为存储过程查询,浏览器访问地址修改为http://ip:port/smartbi/vision/testjdbcPro.jsp其中“驱动类目录”填写规则同上,“查询存储过程”根据实际执行语句填写。


4、提交并查看返回结果

点击页面中的提交按钮,查看返回结果,如果查询SQL勾选了显示结果集,在数据库连接正常且查询不报错时,显示效果如下图:

       


此时,在服务器的smartbi.log最新内容中,也可以看到打印相关日志:

Image Added


       如果查询SQL不填内容就提交,则jsp页面只执行创建连接和关闭连接测试,测试结果只有创建连接耗时会显示时间,除了查询SQL显示空字符串外,其他项一般显示未执行


如果创建连接或者执行sql报错,或者是驱动类目录填写有误,则错误信息后会显示一部分错误原因:如果创建连接或者执行SQL报错,或者是驱动类目录填写有误,则错误信息后会显示一部分错误原因:

在服务器最新的smartbi.log中,可以看到如下日志:

Image Removed


如果存储过程有返回多个结果集,查询结果会分别显示各个结果集的信息:

...