远程服务器,数据库查询报空指针错误

服务器上的数据库是SqlSever, sql语句本地sqlsever上面验证过没问题的,但是服务器就是出不来数据,但是简单的select * from tb 却是没问题的

image.png

image.png

image.png

FineReport 猪猪girl 发布于 2021-3-17 11:25 (编辑于 2021-3-17 12:48)
1min目标场景问卷 立即参与
回答问题
悬赏:10 F币 4人赏过 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
猪猪girlLv4见习互助
发布于2021-3-24 09:59(编辑于 2021-4-25 09:54)

虽然还是没有找到问题的根源,但是折中采取了两个方案:1、使用简单标准的通用sql,如果是复杂的报表就拆分多个数据源来做,可能没有直接sql处理来的爽快  2、实在需要用sql的,就在数据库里面建视图吧

(追加:数据源被人加工过,是SqlSever与Oracle的整合,所以必须采用标准sql才能被识别,不同数据库使用的sql语法稍有区别)

最佳回答
0
zsh331Lv8专家互助
发布于2021-3-17 11:43
排查下【表前缀】问题! ————
  • 猪猪girl 猪猪girl(提问者) 表前缀没有问题的,就是sql稍微复杂了,就会报空指针错误
    2021-03-17 12:41 
  • zsh331 zsh331 回复 猪猪girl(提问者) 如果确定表前缀没有问题,这个SQL语句从表面看,没有问题,检查下sql语句中是否存在特殊字符,比如中文空格等特殊符号。
    2021-03-17 13:15 
  • 猪猪girl 猪猪girl(提问者) 回复 zsh331 我确定sql语句没问题,上面的只是给出个样例,很多sql情况我都试过了,就是sql语句稍微复杂点就不行了,比如select count(STUDENTNO) as num FROM dbo.V_BY_STUDENTGRADUATE where GRADUATEYEAR=2020 没问题,但是 select COLLEGENAME,count( STUDENTNO) as num FROM dbo.V_BY_STUDENTGRADUATE where GRADUATEYEAR=2020 group by COLLEGENAME 就会空指针错误
    2021-03-17 13:20 
  • zsh331 zsh331 回复 猪猪girl(提问者) 确实有点诡异,本地运行正常的话,把本地的jar驱动包copy到服务器上,覆盖掉服务器的jar驱动包后再试试~
    2021-03-17 13:25 
  • zhu大阳啊~ zhu大阳啊~ 回复 zsh331 用户那边权限管的很严,上不去服务器的。更新jar包只能当做最后的处理方式
    2021-03-17 13:38 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2021-3-17 11:59

同样在 FROM [dbo].[V_BY_STUDENTGRADUATE] 前加[JiaoWu]. 试试

  • 0关注人数
  • 489浏览人数
  • 最后回答于:2021-4-25 09:54
    请选择关闭问题的原因
    确定 取消
    返回顶部