Oracle8i Application Developer's Guide - Large Objects (LOBs)
Release 2 (8.1.6)

Part Number A76940-01

Library

Product

Contents

Index

Go to previous page Go to next page


Preface

This Guide describes Oracle8i application development features that deal with Large Objects (LOBs). The information applies to versions of Oracle Server that run on all platforms, and does not include system-specific information.

The Preface includes the following sections:

Information in This Guide

The Oracle8i Application Developer's Guide - Large Objects (LOBs) is intended for programmers developing new applications that use LOBs, as well as those who have already implemented this technology and now wish to take advantage of new features.

The increasing importance of multimedia data as well as unstructured data has led to this topic being presented as an independent volume within the Oracle Application Developers documentation set.

Feature Coverage and Availability

Oracle8i Application Developer's Guide - Large Objects (LOBs) contains information that describes the features and functionality of Oracle8i and Oracle8i Enterprise Edition products.

Oracle8i and Oracle8i Enterprise Edition have the same basic features. However, several advanced features are available only with the Enterprise Edition, and some of these are optional. For example, to use object functionality, you must have the Enterprise Edition and the Objects Option.

What You Need To Use LOBs?

There are no special restrictions when dealing with LOBs. See Chapter 4, "Managing LOBs", for further information about restrictions. You will need the following options:

For information about the differences between Oracle8i and the Oracle8i Enterprise Edition and the features and options that are available to you, see the following:

New LOB Features

New LOB Features, Introduced with Oracle8i, Release 2 (8.1.6)

New LOB features included in the Oracle8i, release 2 (8.1.6) are as follows:

LOB Features, Introduced with Oracle8i, Release 8.1.5

New LOB features included in the Oracle8i, release 8.1.5 are as follows:

What's New in This Manual

This manual has undergone the following changes for Oracle8i Release 2 (8.1.6):

Related Guides

You will find the following manuals helpful for detail on syntax and implementation:

Multimedia

You can access Oracle's development environment for multimedia technology in a number of different ways.

Basic References

How This Book Is Organized

The Oracle8i Application Developer's Guide - Large Objects (LOBs) contains eleven chapters organized into two volumes. A brief summary of what you will find in each chapter follows:

VOLUME I

Chapter 1, "Introduction"

Chapter 1 describes the need for unstructured data and the advantages of using LOBs. We discuss the use of LOBs to promote internationalization by way of CLOBS, and the advantages of using LOBs over LONGs. Chapter 1 also describes the LOB demo file and where to find the supplied LOB sample scripts.

Chapter 2, "Basic Components"

Chapter 2 describes the LOB datatype, including internal persistent and temporary LOBs and external LOBs, (BFILEs). The need to initialize LOBs to NULL or Empty is described. The LOB locator and how to use it is also discussed.

Chapter 3, "LOB Programmatic Environments"

Chapter 3 describes the six programmatic environments used to operate on LOBs and includes a listing of their available LOB-related methods or procedures:

Chapter 4, "Managing LOBs"

Chapter 4 describes how to use SQL*Loader, DBA actions required prior to working with LOBs, and LOB restrictions.

Chapter 5, "Advanced Topics"

Chapter 5 covers advanced topics that touch on all the other chapters. Specifically, we focus on read consistent locators, the LOB buffering subsystem, and LOBs in the object cache.

Chapter 6, "Frequently Asked Questions"

Chapter 6 includes a list of LOB-related questions and answers received from customers.

Chapter 7, "Modeling and Design"

Chapter 7 covers issues related to selecting a datatype and includes a comparison of LONG and LONG RAW properties. Table architecture design criteria are discussed and include tablespace and storage issues, reference versus copy semantics, index-organized tables, and partitioned tables. Other topics are indexing a LOB column and best performance practices.

Chapter 8, "Sample Application"

Chapter 8 provides a sample multimedia case study and solution. It includes the design of the multimedia application architecture in the form of table Multimedia_tab and associated objects, types, and references.

Chapter 9, "Internal Persistent LOBs"

The basic operations concerning internal persistent LOBs are discussed, along with pertinent issues in the context of the scenario outlined in Chapter 8. We introduce the Unified Modeling Language (UML) notation with a special emphasis on use cases. Specifically, each basic operation is described as a use case. A full description of UML is beyond the scope of this book, but the small set of conventions used in this book appears later in the Preface. Wherever possible, we provide the same example in each programmatic environment.

VOLUME II

Chapter 10, "Temporary LOBs"

This chapter follows the same pattern as Chapter 9 but here focuses on the new feature of temporary LOBs. The new API and its attendant issues are discussed in detail. Visual Basic (OO4O) and Java (JDBC) example scripts for temporary LOBs are not provided in this release but will be available in a future release.

Chapter 11, "External LOBs (BFILEs)"

The focus in this chapter is on external LOBs, also known as BFILEs. The same treatment is provided here as in Chapters 9 and 10, namely, every operation is treated as a use case, and we provide matching code examples in every available programmatic environment.

Conventions Used in this Guide

The following notational and text formatting conventions are used in this guide:

[ ]

Square brackets indicate that the enclosed item is optional. Do not type the brackets.

{ }

Braces enclose items of which only one is required.

|

A vertical bar separates items within braces, and may also be used to indicate that multiple values are passed to a function parameter.

...

In code fragments, an ellipsis means that code not relevant to the discussion has been omitted.

font change

SQL or C code examples are shown in monospaced font.

italics

Italics are used for OCI parameters, OCI routines names, file names, data fields, comments, and the titles of other Oracle manuals.

UPPERCASE

Uppercase is used for SQL keywords, like SELECT or UPDATE.

This guide uses special text formatting to draw the reader's attention to some information. A paragraph that is indented and begins with a bold text label may have special meaning. The following paragraphs describe the different types of information that are flagged this way.

How to Interpret the Use Case Diagrams

The use case diagrams used in the manual, specifically in Chapters 9, 10, and 11, are based on UML (Unified Modeling Language).

Why Employ Visual Modelling?

When application developers gather together to discuss a project, it is only a matter of minutes before someone starts sketching on a white board or pad in order to describe the problems and outline solutions. They do so because they instinctively recognize that a mixture of graphics and text is the fastest way to delineate the complex relationships entailed in software development. Participants in these meetings often end up copying down these sketches as a basis for later code development.

Unified Modelling Language

One problem with this process is that whoever creates the diagrams has to invent a notation to adequately represent the issues under discussion. Fortunately, many of the types of problems are familiar, and everyone who is in the room can ask questions about what is meant by the lines and edges. But this raises further problems: What about members of a development team who are not present? Indeed, even people who were there may later lose track of the logic underlying their notes.

To counter these difficulties, this Application Developer's documentation set uses a graphic notation defined by the Unified Modelling Language (UML), an industry-wide standard specifically created for modelling software systems. Describing the UML in its entirety is beyond the scope of the book. However, we do explain the small subset of the UML notation that we employ.

Illustrations and Diagrams

Software documentation has always contained figures. What, then, is the difference between UML-based diagrams used for modelling software development and the figures that have traditionally been used to illustrate different topics? We make a distinction between two kinds of figures in this book:

The two different types are always distinguished in the figure title. The term diagram is always used for the following examples:

Example of an Illustration

Figure 0-1 illustrates the macro-steps entailed in creating a multimedia application. While it may be useful in planning software development from an organizational standpoint, it does not provide any help for the actual coding.

Figure 0-1 Example of an Illustration: The Multimedia Authoring Process


Example of A Use Case Diagram

Note: The following use case diagrams illustrate advanced queuing functionality rather than large objects (LOBs) functionality. For your convenience, these example use case diagrams will be changed to illustrate large objects (LOBs) functionality in a future release.

In contrast to Figure 0-1, Figure 0-2 describes what you must do to enqueue a message using Oracle Advanced Queuing: You must specify a queue name, specify the message properties, specify from among various options, and add the message payload. This diagram is then complemented by further diagrams, as indicated by the drop shadows around the latter three ellipses.

Figure 0-2 Use Case Diagram: Enqueue a Message



Go to previous page Go to next page
Oracle
Copyright © 1996-2000, Oracle Corporation.

All Rights Reserved.

Library

Product

Contents

Index