java中的Db2连接问题

java中的Db2连接问题,java,jdbc,db2,db2-luw,Java,Jdbc,Db2,Db2 Luw,我对DB2有问题。我只是将db2安装为db2admin并带有密码。当我尝试连接到数据库时,它已成功完成,并且在运行任何简单的select查询时,它会给我以下错误:- DB2SQL错误:SQLCODE=-204,SQLSTATE=42704,SQLERRMC=DB2ADMIN.LOGIN,DRIVER=3.57.82 我有一个名为onp的数据库和一个名为“login”的表,其中有一个名为“login”的表,其中有两个字段username和password 我正在运行的查询 从登录中选择*;给我一个

我对DB2有问题。我只是将db2安装为db2admin并带有密码。当我尝试连接到数据库时,它已成功完成,并且在运行任何简单的select查询时,它会给我以下错误:-

DB2SQL错误:SQLCODE=-204,SQLSTATE=42704,SQLERRMC=DB2ADMIN.LOGIN,DRIVER=3.57.82

我有一个名为onp的数据库和一个名为“login”的表,其中有一个名为“login”的表,其中有两个字段username和password

我正在运行的查询

  • 从登录中选择*;给我一个错误
  • DB2SQL错误:SQLCODE=-204,SQLSTATE=42704,SQLERRMC=DB2ADMIN.LOGIN,DRIVER=3.57.82

  • 从system.login中选择*;给我错误:-(//系统是架构名)
  • DB2SQL错误:SQLCODE=-551,SQLSTATE=42501,SQLERRMC=DB2ADMIN;选择;SYSTEM.LOGIN,DRIVER=3.57.82


    我已经尝试了网络上的所有资源,并且完全用尽了。请帮助我

    我对DB2了解不多,但查找错误代码

    第一个错误是因为您没有指定架构,所以找不到登录表

    SQLCODE-204对象未定义到DB2

    DB2显然要求您指定模式名,或者它在模式中的外观与登录用户的名称相同

    必须使用
    SET SCHEMA
    或完全限定表名

    第二个错误是因为您没有执行该选择的权限:

    SQLCODE-551,错误:没有 在上执行操作的权限 反对

    我不知道为什么db2admin用户不能从这个表中选择

    资源:

    您还可以通过以下方式解决此问题:


    只需向连接到DB2的用户授予适当的权限

    发生SQL代码551,因为连接用户没有执行操作的权限

    转到控制中心-转到用户组和对象并选择DB2ADMIN(假设此用户是连接到DB2的用户)

    选中所有复选框,如下所示

    向用户授予架构访问权限

    向用户授予表访问权限

    我也遇到了同样的问题,我通过在实体中添加架构解决了这个问题:

    @Entity
    @Table(name="MyTable", schema="MySchemaName")
    public class MyClass implements Serializable {
    ...
    }
    

    -204还表示完全限定表名中指定的模式不正确或不存在?SQLnnnn其中nnnn是4位sql代码(如果需要,请在左侧扩展0)。这将打印错误的解释。