Oracle8i Application Developer's Guide - Advanced Queuing
Release 2 (8.1.6)

Part Number A76938-01

Library

Product

Contents

Index

Go to previous page Go to beginning of chapter Go to next page

Basic Components, 2 of 6


Data Structures

The following chapters data structures are used in both the operational and administrative interfaces:

Object Name

Purpose:

The naming of database objects. This naming convention applies to queues, queue tables and object types.

Syntax:

object_name := VARCHAR2
object_name := [<schema_name>.]<name>

Usage:

Names for objects are specified by an optional schema name and a name. If the schema name is not specified then the current schema is assumed. The name must follow object name guidelines in the Oracle8i SQL Reference with regard to reserved characters.The schema name, agent name and the object type name can each be up to 30 bytes long. However, queue names and queue table names can be a maximum of 24 bytes.

Type name

Purpose:

Defining queue types.

Syntax:

type_name := VARCHAR2
type_name := <object_type> | "RAW"

Usage:

Table 2-1 Type Name
Parameter  Description 

<object_types> 

For details on creating object types please refer to Server concepts manual. The maximum number of attributes in the object type is limited to 900. 

"RAW

To store payload of type RAW, AQ will create a queue table with a LOB column as the payload repository. The size of the payload is limited to 32K bytes of data. Because LOB columns are used for storing RAW payload, the AQ administrator can choose the LOB tablespace and configure the LOB storage by constructing a LOB storage string in the storage_clause parameter during queue table creation time.  

Agent

Purpose:

To identify a producer or a consumer of a message.

Syntax:

TYPE aq$_agent IS OBJECT (
   name            VARCHAR2(30), 
   address         VARCHAR2(1024),
   protocol        NUMBER)

Usage:

Table 2-2 Agent
Parameter  Description 

name

(VARCHAR2(30)) 

Name of a producer or consumer of a message.The name must follow object name guidelines in the Oracle8i SQL Reference with regard to reserved characters. 

address

(VARCHAR2(1024)) 

Protocol specific address of the recipient. If the protocol is 0 (default) the address is of the form [schema.]queue[@dblink] 

protocol

(NUMBER) 

Protocol to interpret the address and propagate the message. The default value is 0.  

Usage Notes

All consumers that are added as subscribers to a multi-consumer queue must have unique values for the AQ$_AGENT parameter. This means that two subscribers cannot have the same values for the NAME, ADDRESS and PROTOCOL attributes for the AQ$_AGENT type. At least one of the three attributes must be different for two subscribers.

AQ Recipient List Type

Purpose:

To identify the list of agents that will receive the message.

Syntax:

TYPE aq$_recipient_list_t IS TABLE OF aq$_agent  
           INDEX BY BINARY_INTEGER; 

AQ Agent List Type

Purpose:

To identify the list of agents for DBMS_AQ.LISTEN to listen for.

Syntax:

TYPE aq$_agent_list_t IS TABLE OF aq$_agent 
           INDEX BY BINARY INTEGER; 

AQ Subscriber List Type

Purpose:

To identify the list of subscribers that subscribe to this queue.

Syntax:

TYPE aq$_subscriber_list_t IS TABLE OF aq$_agent  
          INDEX BY BINARY INTEGER; 

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

All Rights Reserved.

Library

Product

Contents

Index