java的db2连接问题
我遇到了DB2的问题。我刚刚将db2安装为db2admin和密码。当我尝试连接到数据库时,它已成功完成,并且在运行任何简单的选择查询时,它会给我出现以下错误: -java的db2连接问题
DB2 SQL错误:SQLCODE = -204,SQLSTATE = 42704,SQLERRMC = DB2ADMIN.LOGIN,DRIVER = 3.57.82
我有一个名为onp的数据库和一个名为'login'的表,其中有一个名为'login'的表有两个字段username和password。
查询我从登录运行
- 选择*;让我错误
DB2 SQL错误:SQLCODE = -204,SQLSTATE = 42704,则sqlerrmc = DB2ADMIN.LOGIN,DRIVER = 3.57.82
- 选择从系统* 。登录;给我的错误: - (//系统是架构名称)
DB2 SQL错误:SQLCODE = -551,SQLSTATE = 42501,则sqlerrmc = DB2ADMIN;选择; SYSTEM.LOGIN,DRIVER = 3.57.82
我已经尝试了网络上的所有资源,并完全耗尽。请帮我
我不知道了很多关于DB2,但查找错误代码......
第一个错误是因为你没有指定模式,所以它无法找到登录表。
SQLCODE -204 Object not defined to DB2
DB2显然要求您指定模式名称,或者它在与您的登录用户具有相同名称的架构中查找。
您必须使用SET SCHEMA
或完全限定表名称。
第二个错误是因为您没有权限来执行选择:
SQLCODE -551, Error: DOES NOT HAVE THE PRIVILEGE TO PERFORM OPERATION ON OBJECT
我不知道为什么DB2ADMIN用户将无法从该表中选择...
您也可以解决问题为:
刚为连接到DB2的用户授予适当的权限。
SQL代码551发生是因为连接用户没有执行操作的权限。
转到控制中心 - 进入用户组和对象,并选择DB2ADMIN(假设该用户是一个用于连接到DB2)
检查所有的复选框为以下
格兰特架构访问用户
代授权表访问用户
我有同样的问题,我解决它在我的实体添加架构:
@Entity
@Table(name="MyTable", schema="MySchemaName")
public class MyClass implements Serializable {
...
}
感谢我得到它在你的帮助解决。 – RishiPatel 2009-11-01 06:34:22
-204也会指出完全限定的表名中的指定模式不正确或不存在。 – ammianus 2013-01-02 21:24:08
如果你有一个命令行,下面的代码有助于'db2? SQLnnnn',其中nnnn是4位数字的sql代码(如果需要,在左边延伸0)。这将打印错误的解释。 – Ingo 2013-07-16 13:48:29