Erreur oracle

Résolu/Fermé
badrband Messages postés 11 Date d'inscription vendredi 27 novembre 2009 Statut Membre Dernière intervention 19 août 2012 - 2 avril 2012 à 03:51
Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 - 3 avril 2012 à 13:07
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

Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 102
2 avril 2012 à 19:22
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
badrband Messages postés 11 Date d'inscription vendredi 27 novembre 2009 Statut Membre Dernière intervention 19 août 2012
2 avril 2012 à 23:49
un exemple s'il vous plait et merci
0
Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 102
3 avril 2012 à 13:07
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
jee pee Messages postés 39631 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 24 avril 2024 9 234
Modifié par jee pee le 2/04/2012 à 13:36
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
badrband Messages postés 11 Date d'inscription vendredi 27 novembre 2009 Statut Membre Dernière intervention 19 août 2012
2 avril 2012 à 17:33
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
badrband Messages postés 11 Date d'inscription vendredi 27 novembre 2009 Statut Membre Dernière intervention 19 août 2012
2 avril 2012 à 17:37
j'ai oublié merci
0
jee pee Messages postés 39631 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 24 avril 2024 9 234
2 avril 2012 à 19:18
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
badrband Messages postés 11 Date d'inscription vendredi 27 novembre 2009 Statut Membre Dernière intervention 19 août 2012
2 avril 2012 à 23:06
merci cher ami
0