Skip Headers

Oracle8i Server Installation and Database Administration Guide
Release 3 (8.1.7) for Fujitsu Siemens Computers BS2000/OSD

Part Number A95466-01
Go To Table Of Contents
Contents
Go To Index
Index

Go to previous page Go to next page

11
External Procedures

This chapter describes how to create an environment on BS2000/OSD, where external procedure calls can operate. It complements the chapter about External Routines in Oracle8i Application Developer's Guide (section Fundamentals) and we expect the reader to be familiar with this.

Loading External Procedures

This paragraph complements the corresponding part in Oracle8i Application Developer's Guide.

  1. Set up the environment

    An external procedure does not run in the same process and address space as the caller. Oracle creates separate processes for them to operate savely and secure. For this purpose Net8 features are used and it is the responsibility of the user to provide suitable Net8 control files. In this place we give an example how it can work. For more information refer to Oracle8i Application Developer's Guide, Oracle8i Data Cartridge Developer's Guide and Net8 documentation.
    Your listener.ora file should have an entry like this:

    (SID_DESC = (SID_NAME = ep_agt1)
                (ORACLE_SID = sid_of_your_database)
                (PROGRAM = EXTPROC) )

    Your tnsnames.ora file should have an entry like this:

    extproc_connection_data = (DESCRIPTION =(ADDRESS =(PROTOCOL=ipc)
    (KEY = sid_of_your_database)(CONNECT_DATA =(PRESENTATION=RO)
    (SID = ep_agt1)))

    Then you can start a listener.

  2. Identify the 'DLL'

    A DLL in the BS2000 environment is a modlib containing the functions called as external procedures. When EXTPROC is loaded these functions are dynamically bound to the program.

    Identification of a library to Oracle occurs by:

    CREATE LIBRARY my_c_library AS '$myuserid.my-modlib';
    
    

    The external C routine has to be compiled and the generated LLM has to be stored in the modlib. As Oracle 8.1.7 on BS2000/OSD supports only entry names in upper case letters, you have to set the COMPILER-ACTION option LOWER-CASE-NAMES=NO.

    Furthermore note that if you set the COMPILER-ACTION option SPECIAL-CHARACTERS=CONVERT, all underscores (_) in entry names will be converted to dollar signs ($) which must be considered when publishing the external procedure.

  3. Publishing and Executing external procedures doesn't differ from the description in Oracle8i Application Developer's Guide. Result messages about the execution of the external procedure can be found in a file named L.sid.EXTP.SYSOUT.tsn.


Go to previous page Go to next page
Oracle
Copyright © 2001 Oracle Corporation.

All Rights Reserved.
Go To Table Of Contents
Contents
Go To Index
Index