之前我没有遇到过这个错误。我有一个数据库db
,其中包含一个表tb_name
,我在iReport Designer中使用db
所有者的凭据创建了一个连接。然后我创建新报告,但查询select * from tb_name;
会引发以下错误:
SQL问题:错误:关系tb_name的权限被拒绝 查询错误
消息: net.sf.jasperreports.engine.JRException:SQL问题:错误:关系权限被拒绝tb_name级别: 严重堆栈跟踪:SQL问题:错误:关系tb_name的权限被拒绝 com.jaspersoft.ireport.designer.data.fieldsproviders.SQLFieldsProvider.getFields(SQLFieldsProvider.java:435) com.jaspersoft.ireport.designer.connection.JDBCConnection.readFields(JDBCConnection.java:470) com.jaspersoft.ireport.designer.wizards.ConnectionSelectionWizardPanel.validate(ConnectionSelectionWizardPanel.java:146) org.openide.WizardDescriptor $ 7.run(WizardDescriptor.java:1357) org.openide.util.RequestProcessor $ Task.run(RequestProcessor.java:572) org.openide.util.RequestProcessor $ Processor.run(RequestProcessor.java:997)
当我测试连接时,一切都很好。这个错误的原因是什么?提前谢谢。
答案 0 :(得分:2)
请检查用户是否有权执行语句。某些数据库更改可能导致用户失去查询权限。