Erreur oracle

Résolu
Bonjour,

j'ai un problème sous oracle j'ai créé ma base de données j'ai rajouter mes tables dans l'utilisateur system, j'ai donné les droits à un autre utilisateur a l'aide de la commande grant connect,resource to badr; le résultat est grant succed
mais quand je me connecte a l'aide de l'utilisateur badr je tape la commande suivante desc livre l'oracle m'affiche ora-04043 objet does not exist

s'il vous plait je veux une solution à ce problème et merci

2 réponses

  1. Bonjour badrband,

    En effet, il est toujours préférable de faire précéder tes tables des owner du schéma. Cela évitera toute ambiguïté et t'évitera, si tu fais des extractDDL, d'ajouter des objets sur le mauvais schéma.
    1
    1. un exemple s'il vous plait et merci
      0
    2. Admettons que tu aies deux schémas nommés respectivement BADR et BAND.
      Sur les deux schémas, tu as une table qui s'appelle PERSONNES, la différence entre les deux, c'est que tu n'as pas tout à fait les mêmes champs.
      Lors de tes requêtes, il est préférable d'utiliser le owner du schéma et au lieu de faire des requêtes comme :
      SELECT *
      FROM PERSONNES

      il faudra faire :
      SELECT *
      FROM BADR.PERSONNES

      si tu ne veux pas qu'il aille chercher dans la table PERSONNES du schéma BAND si tu es connecté en tant que BAND.
      0
  2. Modérateur
    Salut,

    Il faut donner le nom du user propriétaire:

    desc system.livre

    cdlt

    ps : system est un compte administration oracle, on ne devrait jamais créer d'objets utilisateur dedans. Il faut se créer ses propres utilisateurs.

    Un étranger, c'est un ami qu'on n'a pas encore rencontré.
    0
    1. oui ça marche mais est ce qu'il faut toujours mentionner le propriétaire des tables? par exemple j'ai deux utilisateurs Util1 et Util2 il faut toujours mettre
      desc util1."nom de la table"?
      0
    2. j'ai oublié merci
      0
    3. Modérateur
      Si tu es connecté system tu n'as pas besoin de préciser system.livre , livre suffit . Mais si tu es connecté sous un autre compte, il faut préciser le propriétaire de la table.

      Cela parce qu'il peut y avoir plusieurs tables livre, une appartenant à chaque utilisateur.
      0
    4. merci cher ami
      0