2009-10-19 17 views
8

Tengo un problema con DB2. Acabo de instalar el db2 como db2admin y con una contraseña. Cuando trato de conectarme a la base de datos, está completo y al ejecutar cualquier consulta de selección simple me da el siguiente error: -Problema de conexión Db2 con java

DB2 SQL Error: SQLCODE = -204, SQLSTATE = 42704, SQLERRMC = DB2ADMIN.LOGIN, DRIVER = 3.57.82

Tengo una base de datos llamada onp y una tabla llamada 'login' en la que hay una tabla llamada 'login' con dos campos nombre de usuario y contraseña.

de consulta que estoy funcionando

  1. Seleccionar * de inicio de sesión; me da error de

DB2 SQL Error: SQLCODE = -204, SQLSTATE = 42704, SQLERRMC = DB2ADMIN.LOGIN, DRIVER = 3.57.82

  1. Seleccionar * de sistema .iniciar sesión; me da error: - (// sistema es el nombre de esquema)

DB2 SQL Error: SQLCODE = -551, SQLSTATE = 42501, SQLERRMC = DB2ADMIN; SELECT; SYSTEM.LOGIN, DRIVER = 3.57.82

He intentado todos los recursos en la red y agotado por completo. Por favor me ayude a

Respuesta

9

No sé mucho acerca de DB2, pero mirando hacia arriba los códigos de error ...

El primer error se debe a que no se ha especificado un esquema, por lo que no pudo encontrar la tabla de inicio de sesión.

SQLCODE -204 Object not defined to DB2

DB2 aparentemente requiere que se especifique el nombre de esquema o se ve en el esquema con el mismo nombre que el usuario de inicio de sesión.

Debe usar SET SCHEMA o calificar completamente el nombre de la tabla.

El segundo error es debido a que no tiene los privilegios para realizar ese selecto:

SQLCODE -551, Error: DOES NOT HAVE THE PRIVILEGE TO PERFORM OPERATION ON OBJECT

No estoy seguro de por qué el usuario db2admin no sería capaz de seleccionar de esta tabla ...

Recursos:
List of DB2 SQLCODEs

+0

Gracias Lo tengo resuelto con su ayuda. – RishiPatel

+0

-204 también indicaría que el esquema especificado en un nombre de tabla totalmente calificado es incorrecto o no existe. – ammianus

+0

Si tiene una línea de comando, lo siguiente ayuda a 'db2? SQLnnnn' donde nnnn es el código sql de 4 dígitos (extiéndelo con 0 a la izquierda si es necesario). Esto imprimirá una explicación del error. – Ingo

1

también puede resolver el problema como:

Justo otorgue la autorización adecuada al usuario mediante el cual está conectado a DB2.

4

SQL CODE 551 se produjo porque el usuario que se conecta no tiene privilegios para realizar operaciones.

Ir al Centro de Control - Ir al grupo de usuarios y de objetos y seleccionar DB2ADMIN (suponiendo que este usuario es el uso para conectarse a DB2)

enter image description here

presentarán todas las casilla de verificación de la siguiente manera

enter image description here

subvención esquema de acceso para el usuario enter image description here

Tablas conceder acceso al usuario enter image description here

1

que tenía el mismo problema y lo resolví mediante la adición de esquema en mi entidad:

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