Sample Schemas
During a complete installation of Oracle Database, the Sample Schemas can be
installed automatically with the seed database. If for some reason the seed database
is removed from your system, you will need to reinstall the Sample Schemas before
you can duplicate the examples you find in Oracle documentation and training
materials.
Oracle® Database
Sample Schemas
10g Release 1 (10.1)
Part No. B10771-01
December 2003
Oracle Database Sample Schemas 10g Release 1 (10.1)
Part No. B10771-01
Copyright © 2001, 2003 Oracle Corporation. All rights reserved.
Contributors: Christian Bauwens, Alexander Hunold, Diana Lorentz, Neena Kochhar, Lex de Haan,
Nancy Greenberg, Nagavalli Pataballa, Den Raphaely, David Austin, Bill Gietz, Hermann Baer, Shelley
Higgins, Brajesh Goyal, Shailendra Mishra, Geoff Lee, and Susan Mavris
The Programs (which include both the software and documentation) contain proprietary information of
Oracle Corporation; they are provided under a license agreement containing restrictions on use and
disclosure and are also protected by copyright, patent and other intellectual and industrial property
laws. Reverse engineering, disassembly or decompilation of the Programs, except to the extent required
to obtain interoperability with other independently created software or as specified by law, is prohibited.
The information contained in this document is subject to change without notice. If you find any problems
in the documentation, please report them to us in writing. Oracle Corporation does not warrant that this
document is error-free. Except as may be expressly permitted in your license agreement for these
Programs, no part of these Programs may be reproduced or transmitted in any form or by any means,
electronic or mechanical, for any purpose, without the express written permission of Oracle Corporation.
If the Programs are delivered to the U.S. Government or anyone licensing or using the programs on
behalf of the U.S. Government, the following notice is applicable:
Restricted Rights Notice Programs delivered subject to the DOD FAR Supplement are "commercial
computer software" and use, duplication, and disclosure of the Programs, including documentation,
shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement.
Otherwise, Programs delivered subject to the Federal Acquisition Regulations are "restricted computer
software" and use, duplication, and disclosure of the Programs shall be subject to the restrictions in FAR
52.227-19, Commercial Computer Software - Restricted Rights (June, 1987). Oracle Corporation, 500
Oracle Parkway, Redwood City, CA 94065.
The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently
dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup,
redundancy, and other measures to ensure the safe use of such applications if the Programs are used for
such purposes, and Oracle Corporation disclaims liability for any damages caused by such use of the
Programs.
Oracle is a registered trademark, and Oracle Store, PL/SQL, and SQL*Plus are trademarks or registered
trademarks of Oracle Corporation. Other names may be trademarks of their respective owners.
Contents
Send Us Your Comments ................................................................................................................... v
Preface........................................................................................................................................................... vii
Audience ................................................................................................................................................ vii
About the Sample Schemas ................................................................................................................ viii
Customer Benefits of the Sample Schemas ..................................................................................... viii
Oracle Database Sample Schemas Design Principles ....................................................................... ix
Organization........................................................................................................................................... ix
Related Documentation ......................................................................................................................... x
Conventions............................................................................................................................................. x
Documentation Accessibility ............................................................................................................. xiv
1 Installation
Using the Database Configuration Assistant ................................................................................ 1-2
Manually Installing the Sample Schemas ..................................................................................... 1-3
Resetting the Sample Schemas ........................................................................................................ 1-7
2 Rationale
Overall Description ............................................................................................................................ 2-1
Human Resources (HR) ..................................................................................................................... 2-2
Order Entry (OE) ................................................................................................................................ 2-2
Product Media (PM) .......................................................................................................................... 2-3
Information Exchange (IX) ............................................................................................................... 2-4
Sales History (SH) .............................................................................................................................. 2-4
iii
3 Diagrams
Sample Schema Diagrams................................................................................................................. 3-2
4 Sample Schema Scripts and Object Descriptions
About the Scripts................................................................................................................................. 4-1
Master Script ........................................................................................................................................ 4-2
HR Schema ........................................................................................................................................... 4-5
OE Schema............................................................................................................................................ 4-9
PM Schema......................................................................................................................................... 4-16
IX Schema ........................................................................................................................................... 4-18
SH Schema.......................................................................................................................................... 4-24
Index
iv
Send Us Your Comments
Oracle Database Sample Schemas, 10g Release 1 (10.1)
Part No. B10771-01
Oracle Corporation welcomes your comments and suggestions on the quality and usefulness of this
publication. Your input is an important part of the information used for revision.
s Did you find any errors?
s Is the information clearly presented?
s Do you need more information? If so, where?
s Are the examples correct? Do you need more examples?
s What features did you like most about this manual?
If you find any errors or have any other suggestions for improvement, please indicate the title and
part number of the documentation and the chapter, section, and page number (if available). You can
send comments to us in the following ways:
s Electronic mail: [email protected]
s FAX: (650) 506-7227 Attn: Server Technologies Documentation Manager
s Postal service:
Oracle Corporation
Oracle Server Technologies Documentation
500 Oracle Parkway, Mailstop 4op11
Redwood Shores, CA 94065
U.S.A.
If you would like a reply, please give your name, address, telephone number, and (optionally) your
electronic mail address.
If you have problems with the software, please contact your local Oracle Support Services.
v
vi
Preface
Oracle used the schema SCOTT with its two prominent tables EMP and DEPT tables
for many years. With advances in Oracle Database technology, these tables have
become inadequate to show even the most basic features of Oracle Database and
other Oracle products. As a result, many other schemas have been created over the
years to suit the needs of product documentation, courseware, software
development, and application demos.
This preface contains these topics:
s Audience
s About the Sample Schemas
s Customer Benefits of the Sample Schemas
s Oracle Database Sample Schemas Design Principles
s Organization
s Related Documentation
s Conventions
s Documentation Accessibility
Audience
The Sample Schemas are for all users of the seed database, which is installed when
you install Oracle Database.
vii
About the Sample Schemas
The new Oracle Database Sample Schemas provide a common platform for
examples in each release of Oracle Database. All Oracle Database documentation
and training materials are being converted to the Sample Schemas environment as
those materials are updated.
The Oracle Database Sample Schemas are a set of interlinked schemas. This set of
schemas provides a layered approach to complexity:
s A simple schema (Human Resources, HR) is useful for introducing basic topics.
An extension to this schema supports Oracle Internet Directory demos.
s A second schema (Order Entry, OE) is useful for dealing with matters of
intermediate complexity. Many datatypes are available in this schema,
including nonscalar datatypes.
s The Online Catalog (OC) subschema is a collection of object-relational database
objects built inside the OE schema.
s The Product Media schema (PM) is dedicated to multimedia datatypes.
s A set of schemas gathered under the main schema name IX (Information
Exchange) can demonstrate Oracle Advanced Queuing capabilities.
s The Sales History schema (SH) is designed to allow for demos with large
amounts of data. An extension to this schema provides support for advanced
analytic processing.
Customer Benefits of the Sample Schemas
s Continuity of context. When encountering the same set of tables everywhere,
users, students, and developers can spend less time becoming familiar with the
schema and more time understanding or explaining the technical concepts.
s Usability. Customers can use these schemas in the seed database to run
examples that are shown in Oracle documentation and training materials. This
first-hand access to examples facilitates both conceptual understanding and
application development.
s Quality. Through central maintenance and testing of both the creation scripts
that build the Sample Schemas and the examples that run against the schemas,
the quality of Oracle documentation and training materials is enhanced.
viii
Oracle Database Sample Schemas Design Principles
The Sample Schemas have been created and are enhanced with the following design
principles in mind:
s Simplicity and Ease of Use. The HR and OE schemas are intentionally simple.
They will not become overly complex by the addition of features. Rather, they
are intended to provide a graduated path from the simple to intermediate levels
of database use.
s Relevance for Typical Users. The base schemas and the extensions bring to the
foreground the functionality that customers typically use. Only the most
commonly used database objects are built automatically in the schemas. The
entire set of schemas provides a foundation upon which one can expand to
illustrate additional functionality.
s Extensibility. The Sample Schemas provide a logical and physical foundation
for adding objects to demonstrate functionality beyond the fundamental scope.
s Relevance. The Sample Schemas are designed to be applicable to e-business
and other significant industry trends (for example, XML). When this goal
conflicts with the goal of simplicity, schema extensions are used to showcase the
trends in focus.
Organization
This document contains the following chapters:
Chapter 1, "Installation"
This chapter describes how to install the Oracle Database Sample Schemas.
Chapter 2, "Rationale"
This chapter describes the fictitious company on which the Sample Schemas are
based.
Chapter 3, "Diagrams"
This chapter contains diagrams of the Sample Schemas.
Chapter 4, "Sample Schema Scripts and Object Descriptions"
This chapter lists the Sample Schema creation scripts and describes the Sample
Schema objects.
ix
Related Documentation
In North America, printed documentation is available for sale in the Oracle Store at
http://oraclestore.oracle.com/
Customers in Europe, the Middle East, and Africa (EMEA) can purchase
documentation from
http://www.oraclebookshop.com/
Other customers can contact their Oracle representative to purchase printed
documentation.
To download free release notes, installation documentation, white papers, or other
collateral, please visit the Oracle Technology Network (OTN). You must register
online before using OTN; registration is free and can be done at
http://otn.oracle.com/admin/account/membership.html
If you already have a username and password for OTN, then you can go directly to
the documentation section of the OTN Web site at
http://otn.oracle.com/docs/index.htm
To access the database documentation search engine directly, please visit
http://tahiti.oracle.com
Conventions
This section describes the conventions used in the text and code examples of this
documentation set. It describes:
s Conventions in Text
s Conventions in Code Examples
Conventions in Text
We use various conventions in text to help you more quickly identify special terms.
The following table describes those conventions and provides examples of their use.
x
Convention Meaning Example
Bold Bold typeface indicates When you specify this
terms that are defined in clause, you create an
the text or terms that index-organized table.
appear in a glossary, or
both.
Italics Italic typeface indicates Oracle Database Concepts
book titles or emphasis.
Ensure that the recovery
catalog and target
database do not reside on
the same disk.
UPPERCASE monospace Uppercase monospace You can specify this clause
(fixed-width) font typeface indicates only for a NUMBER
elements supplied by the column.
system. Such elements
You can back up the
include parameters,
database by using the
privileges, datatypes,
BACKUP command.
RMAN keywords, SQL
keywords, SQL*Plus or Query the TABLE_NAME
utility commands, column in the USER_
packages and methods, as TABLES data dictionary
well as system-supplied view.
column names, database
Use the DBMS_
objects and structures,
STATS.GENERATE_STATS
usernames, and roles.
procedure.
xi
Convention Meaning Example
lowercase monospace Lowercase monospace Enter sqlplus to open
(fixed-width) font typeface indicates SQL*Plus.
executables, filenames,
The password is specified
directory names, and
in the orapwd file.
sample user-supplied
elements. Such elements Back up the datafiles and
include computer and control files in the
database names, net /disk1/oracle/dbs
service names, and directory.
connect identifiers, as well
The department_id,
as user-supplied database
department_name, and
objects and structures,
location_id columns
column names, packages
are in the
and classes, usernames
hr.departments table.
and roles, program units,
and parameter values. Set the QUERY_REWRITE_
ENABLED initialization
Note: Some programmatic
parameter to true.
elements use a mixture of
UPPERCASE and Connect as oe user.
lowercase. Enter these
The JRepUtil class
elements as shown.
implements these
methods.
lowercase italic Lowercase italic You can specify the
monospace monospace font parallel_clause.
(fixed-width) font represents placeholders or
Run Uold_release.SQL
variables.
where old_release
refers to the release you
installed prior to
upgrading.
Conventions in Code Examples
Code examples illustrate SQL, PL/SQL, SQL*Plus, or other command-line
statements. They are displayed in a monospace (fixed-width) font and separated
from normal text as shown in this example:
SELECT username FROM dba_users WHERE username = 'MIGRATE';
The following table describes typographic conventions used in code examples and
provides examples of their use.
xii
Convention Meaning Example
[ ] Brackets enclose one or DECIMAL (digits [ ,
more optional items. Do precision ])
not enter the brackets.
{ } Braces enclose two or {ENABLE | DISABLE}
more items, one of which
is required. Do not enter
the braces.
| A vertical bar represents a {ENABLE | DISABLE}
choice of two or more [COMPRESS |
options within brackets or NOCOMPRESS]
braces. Enter one of the
options. Do not enter the
vertical bar.
... Horizontal ellipsis points
indicate either: CREATE TABLE ... AS
s That we have omitted subquery;
parts of the code that
are not directly SELECT col1, col2, ...
related to the example , coln FROM employees;
s That you can repeat a
portion of the code
. Vertical ellipsis points SQL> SELECT NAME FROM
. indicate that we have V$DATAFILE;
. omitted several lines of NAME
code not directly related ----------------------
to the example. --------------
/fsl/dbs/tbs_01.dbf
/fs1/dbs/tbs_02.dbf
.
.
.
/fsl/dbs/tbs_09.dbf
9 rows selected.
Other notation You must enter symbols acctbal NUMBER(11,2);
other than brackets, acct CONSTANT
braces, vertical bars, and NUMBER(4) := 3;
ellipsis points as shown.
xiii
Convention Meaning Example
Italics Italicized text indicates CONNECT SYSTEM/system_
placeholders or variables password
for which you must DB_NAME = database_
supply particular values. name
UPPERCASE Uppercase typeface SELECT last_name,
indicates elements employee_id FROM
supplied by the system. employees;
We show these terms in SELECT * FROM USER_
uppercase in order to TABLES;
distinguish them from
DROP TABLE
terms you define. Unless
terms appear in brackets, hr.employees;
enter them in the order
and with the spelling
shown. However, because
these terms are not case
sensitive, you can enter
them in lowercase.
lowercase Lowercase typeface SELECT last_name,
indicates programmatic employee_id FROM
elements that you supply. employees;
For example, lowercase sqlplus hr/hr
indicates names of tables, CREATE USER mjones
columns, or files.
IDENTIFIED BY ty3MU9;
Note: Some programmatic
elements use a mixture of
UPPERCASE and
lowercase. Enter these
elements as shown.
Documentation Accessibility
Our goal is to make Oracle products, services, and supporting documentation
accessible, with good usability, to the disabled community. To that end, our
documentation includes features that make information available to users of
assistive technology. This documentation is available in HTML format, and contains
markup to facilitate access by the disabled community. Standards will continue to
evolve over time, and Oracle is actively engaged with other market-leading
technology vendors to address technical obstacles so that our documentation can be
accessible to all of our customers. For additional information, visit the Oracle
Accessibility Program Web site at
xiv
http://www.oracle.com/accessibility/
Accessibility of Code Examples in Documentation JAWS, a Windows screen
reader, may not always correctly read the code examples in this document. The
conventions for writing code require that closing braces should appear on an
otherwise empty line; however, JAWS may not always read a line of text that
consists solely of a bracket or brace.
Accessibility of Links to External Web Sites in Documentation This
documentation may contain links to Web sites of other companies or organizations
that Oracle does not own or control. Oracle neither evaluates nor makes any
representations regarding the accessibility of these Web sites.
xv
xvi
1
Installation
During a complete installation of Oracle Database, the Sample Schemas can be
installed automatically with the seed database. If for some reason the seed database
is removed from your system, you will need to reinstall the Sample Schemas before
you can duplicate the examples you find in Oracle documentation and training
materials.
This chapter describes how to install the Sample Schemas. It contains the following
sections:
s Using the Database Configuration Assistant
s Manually Installing the Sample Schemas
s Resetting the Sample Schemas
Installation 1-1
Using the Database Configuration Assistant
Caution: By installing any of the Oracle Database Sample
Schemas, you will destroy any previously installed schemas that
use any of the following user names:
s HR
s OE
s PM
s SH
s IX
Data contained in any of the these schemas will be lost by running
any of the installation scripts described in this section. You should
not use Oracle Database Sample Schemas for your personal or
business data and applications. They are meant to be used for
demonstration purposes only.
Using the Database Configuration Assistant
Using DBCA is by far the most intuitive and simple way to install the Sample
Schemas. Step 9 of the database creation process lets you configure the Sample
Schemas you wish to use in your database.
s The checkbox "Example Schemas" needs to be checked for any Sample Schema
to be created.
s DBCA installs all five schemas (HR, OE, PM, IX, SH) in your database.
Note: At the end of the installation process, a window displays
the accounts that have been created and their lock status. All of the
Sample Schemas are locked. You can unlock the accounts at this
point in the installation process. Alternatively, after installation is
complete, you can unlock the schemas with an ALTER USER ...
ACCOUNT UNLOCK statement.
The Sample Schemas and objects that are available to you depend on the edition of
Oracle you install and its configuration. Please consult the following table to see
which schemas you can install (limitations apply):
1-2 Sample Schemas
Manually Installing the Sample Schemas
Oracle Database Oracle Database Oracle Database
Schema Personal Edition Standard Edition Enterprise Edition
HR OK OK OK
OE OK OK OK
PM OK OK OK
IX OK OK OK
SH Not available Not available Needs Partitioning
Option installed
Manually Installing the Sample Schemas
This section describes how to install the Sample Schemas manually.
Schema Dependencies
Various dependencies have been established among the schemas. Therefore, when
you create the schemas manually, you must create them in the following order: HR,
OE, PM, IX, and SH.
Use this sequence to create the schemas:
1. Create the HR schema.
2. Create the OE schema: The HR schema must already be present, and you must
know the password for the HR schema so that you can grant HR object privileges
to OE. Some HR tables are visible to the OE user through the use of private
synonyms. In addition, some OE tables have foreign key relationships to HR
tables.
Note: The OE schema requires the database to be enabled for
spatial data. You can accomplish this during installation or
afterward using the Database Configuration Assistant.
3. Create the PM schema: Foreign key relationships require that the OE schema
already exist when the PM schema is created. You need to know the password
for OE to grant to PM the right to establish and use these foreign keys.
Installation 1-3
Manually Installing the Sample Schemas
Note: The PM schema requires the database to be enabled for the
Java Virtual Machine (JVM) and interMedia. You can accomplish
this during installation or afterward using the Database
Configuration Assistant.
4. Create the IX schema: The information exchange schema IX is based on order
entry data in OE. Again, foreign key relationships require that the OE schema
already be present when the IX schema is created. You need to know the
password for OE to grant to IX the right to establish and use these foreign keys.
5. Create the SH schema. The SH schema logically depends on the OE schema,
although nothing prevents you from creating this schema on its own, without
the four other schemas.
Installing the Human Resources (HR) Schema
All scripts necessary to create this schema reside in $ORACLE_
HOME/demo/schema/human_resources.
You need to call only one script, hr_main.sql, to create all objects and load the
data. Running hr_main.sql accomplishes the following tasks:
1. Prompts for passwords and tablespace names used within the scripts.
2. Removes any previously installed HR schema.
3. Creates the user HR and grants the necessary privileges.
4. Connects as HR.
5. Calls the scripts that create and populate the schema objects.
For a complete listing of the scripts and their functions, please refer to Table 4–1 on
page 4-6.
A pair of optional scripts, hr_dn_c.sql and hr_dn_d.sql, is provided as a
schema extension. To prepare the Human Resources schema for use with the
Directory capabilities of Oracle Internet Directory, run the hr_dn_c.sql create
script. If you want to return to the initial setup of the HR schema, use the script hr_
dn_d.sql to reverse the effects of hr_dn_c.sql and remove the column added
by this extension.
The file used to drop the HR schema is hr_drop.sql.
1-4 Sample Schemas