Différence Tablespace, Schéma, Utilisateur : je m'embrouille
Salut a tous je lis attentivement le guide administration oracle de Sheik, Orafrance et Helyos mais j'ai parfois du mal a comprendre ce qui se passe derrierre...
J'ai bien compris ce qu'étais un utilisateur. Ainsi qu'un schéma, de meme le fait que dès qu'un utilisateur est créé son schéma l'est aussi...
Mais là ca se complique avec les tablespace, parce qu'ils parlent de définir des tablespace pour un utilisateur mais je vois pas ce à quoi ca correspond??? Est la meme chose qu'un schéma???
2eme question : Imaginons que je crée un utilisateur paul, et un autre thomas, si thomas crée des tables sans précision, ellsl seront dans le schéma thomas. Si Paul sans précision tape select * from une table qui est dans le schéma de thomas. En supposant qu'il a les droit de les lire, est il obligé de préciser le schéma thomas dans sa requette ou oracle va aller les lire sans probleme???
Re: Différence Tablespace, Schéma, Utilisateur : je m'embrou
Bah, vous n'avez pas l'air si embrouillé que ça, vous avez visiblement bien compris !
Citation:
Envoyé par Aeternus
Mais là ca se complique avec les tablespace, parce qu'ils parlent de définir des tablespace pour un utilisateur mais je vois pas ce à quoi ca correspond??? Est la meme chose qu'un schéma???
Le schéma, c'est la notion de propriété. Tous les objets qui m'appartiennent constituent mon schéma.
Le tablespace, c'est la notion de stockage.
Exemple de la vie courante : vous possédez des vêtements, votre femme en possède aussi. Chacun de vous sait ce qui lui appartient.
La notion de propriété, c'est une abstraction.
Ce qui devient concret, c'est le rangement. Supposons que vous ayez une armoire à 2 étagères et une penderie. Vous pouvez décider que vous utiliserez chacun 1 étagère (oui, dans la vraie vie, c'est plutôt 1,5 pour madame et 0,5 pour monsieur) et que vous partagerez la penderie pour les vêtements longs.
Eh bien ces 2 étagères et cette penderie sont des tablespaces (donc 3 au total).
La définition des tablespaces pour un utilisateur, c'est le fait de dire "par défaut tu mets tes fringues en haut, moi je les mets en bas".
Sous Oracle, ça se traduit par :
CREATE USER aa IDENTIFIED BY bb DEFAULT TABLESPACE tbs1;
CREATE USER cc IDENTIFIED BY dd DEFAULT TABLESPACE tbs2;
Donc, à défaut de spécification particulière, les objets appartenant à aa seront dans le tablespaces tbs1, et ceux de cc iront dans le tablespace tbs2.
Citation:
Envoyé par Aeternus
2eme question : Imaginons que je crée un utilisateur paul, et un autre thomas, si thomas crée des tables sans précision, ellsl seront dans le schéma thomas. Si Paul sans précision tape select * from une table qui est dans le schéma de thomas. En supposant qu'il a les droit de les lire, est il obligé de préciser le schéma thomas dans sa requette ou oracle va aller les lire sans probleme???
Si les objets recherchés par un utilisateur ne lui appartiennent pas (c'est à dire ne sont pas dans son schéma), il est obligé de préciser dans quel schéma ils se trouvent.