Problème de connexion Db2 avec java


J'ai un problème avec DB2. Je viens d'installer le db2 en tant que db2admin et avec un mot de passe. Lorsque j'essaie de me connecter à la base de données, le succès est complet et lors de l'exécution d'une simple requête de sélection, il me donne l'erreur suivante: -

Erreur SQL DB2: SQLCODE=-204, SQLSTATE=42704, SQLERRMC=DB2ADMIN.CONNEXION, PILOTE=3.57.82

J'ai une base de données nommée onp et une table appelée 'login' dans laquelle il y a une table appelée 'login' avec deux champs nom d'utilisateur et mot de passe.

Requête que je je cours

  1. Select * from login; me donne une erreur

Erreur SQL DB2: SQLCODE=-204, SQLSTATE=42704, SQLERRMC=DB2ADMIN.CONNEXION, PILOTE=3.57.82

  1. Sélectionnez * dans le système.login; me donne une erreur: - (//le système est le nom du schéma)

Erreur SQL DB2: SQLCODE=-551, SQLSTATE=42501, SQLERRMC=DB2ADMIN;SELECT;SYSTEM.CONNEXION, PILOTE=3.57.82

J'ai essayé toutes les ressources sur le net et épuisé complètement. S'il vous plaît aidez-moi

Author: mustaccio, 2009-10-19

4 answers

Je ne connais pas beaucoup de choses sur DB2, mais je recherche les codes d'erreur...

La première erreur est que vous n'avez pas spécifié de schéma, il n'a donc pas pu trouver la table de connexion.

SQLCODE -204 Objet non défini à DB2

DB2 vous oblige apparemment à spécifier le nom du schéma ou il regarde dans le schéma avec le même nom que votre utilisateur de connexion.

Vous devez utiliser SET SCHEMA ou qualifier complètement le nom de la table.

La deuxième erreur est parce que vous n'avez pas le privilèges pour effectuer cette sélection:

SQLCODE -551, Erreur: N'A PAS LE PRIVILÈGE D'EFFECTUER UNE OPÉRATION SUR OBJET

Je ne sais pas pourquoi l'utilisateur db2admin ne pourrait pas sélectionner dans cette table...

Ressources:
Liste des SQLCODEs DB2

 11
Author: Powerlord, 2009-10-19 13:44:26

Le CODE SQL 551 s'est produit parce que l'utilisateur qui se connecte n'a pas de privilèges pour effectuer des opérations.

Aller au Centre de contrôle - Aller au Groupe d'utilisateurs et à l'objet et sélectionnez DB2ADMIN(supposons que cet utilisateur soit celui utilisé pour se connecter à DB2)

entrez la description de l'image ici

Cochez toutes les cases comme suit

entrez la description de l'image ici

Accorder l'accès au schéma à l'utilisateur entrez la description de l'image ici

Accorder l'accès aux tables à l'utilisateur entrez la description de l'image ici

 5
Author: zawhtut, 2013-03-07 04:11:34

Vous pouvez également résoudre le problème aussi:

Donnez simplement l'autorité appropriée à l'utilisateur par lequel vous êtes connecté à DB2.

 1
Author: Kishore, 2012-04-23 12:50:43

J'ai eu le même problème et je l'ai résolu en ajoutant Schéma dans mon entité :

@Entity
@Table(name="MyTable", schema="MySchemaName")
public class MyClass implements Serializable {
...
}
 1
Author: ilias, 2013-08-19 14:53:33