RelationalDBDesignRelationalDBDesign


Create Database   «Prev  Next»
Lesson 10 Product user profile
ObjectiveDescribe the tables and views that are created as part of the product user profile.

Running PUPBLD Script

Results of running PUPBLD script

When you run the PUPBLD script to create the product user profile for an Oracle8i database, you get one table, one view, two public synonyms, and one private synonym. Move your mouse over the following diagram to learn how these components interrelate and what they are for:

  1. The system user gets a private synonym that points to the table, and not the view. This prevents the system user from being constrained by the view and allows him or her to see everything.
  2. PUPBLD creates a public synonym named product_user_profile that points to the product_profile view. This is what SQL*Plus queries against when a user logs on.
  3. This is also a public synonym and also points to the product_profile view.
  4. This table contains command and role restrictions for SQL*Plus users. Prior to the release of Oracle8i (i.e., prior to 8.1.5), this table was named product_profile. Database users are not granted access to this table. Only the system user can see it
  5. This view is written in such a way as to return only those rows from the sqlplus_product_profile table that apply to the user who queries it. SELECT access on this view is granted to public. This allows a product such as SQL*Plus to query the product user profile for a given user without having to have access to the underlying table

Creating Product user Profile
If you look back at previous releases of Oracle (prior to 8.1.5), you will see that the PUPBLD script has changed slightly over time. Most notably, in the recent past, the table name was product_profile. Now it is sqlplus_product_profile.