An Oracle Precompiler is a programming tool that enables you to embed SQL statements in a high-level host program. As Figure 1-1shows, the precompiler accepts the host program as input, translates the embedded SQL statements into standard Oracle runtime library calls, and generates a source program that you can compile, link, and execute in the usual way.
Language Alternatives
Two Oracle Precompilers are available (not on all systems); they support the following high-level languages:
C/C++
COBOL
Meant for different application areas and reflecting different design philosophies, these languages offer a broad range of programming solutions.
Why Use an Oracle Precompiler?
The Oracle Precompilers let you include the flexibility of SQL into your application programs. You can use SQL in popular high-level languages such as C and COBOL. A convenient, easy to use interface lets your application access Oracle directly.
Unlike many application development tools, the Oracle Precompilers let you create highly customized applications. For example, you can create user interfaces that incorporate the latest windowing and mouse technology. You can also create applications that run in the background without the need for user interaction.
Furthermore, with the Oracle Precompilers you can fine-tune your applications. They allow close monitoring of resource usage, SQL statement execution, and various runtime indicators. With this information, you can adjust program parameters for maximum performance.
What Do the Oracle Precompilers Offer?
For example, the Oracle Precompilers allow you to:
program your application in any of six high-level languages
confirm to the ANSI/ISO embedded SQL standard
take advantage of dynamic SQL, an advanced programming technique that lets your program accept or build any valid SQL statement at run time
design and develop highly customized applications
convert automatically between Oracle internal datatypes and high-level language datatypes
improve performance by embedding PL/SQL transaction processing blocks in your application program
specify useful precompiler options and change their values during precompilation
use datatype equivalencing to control the way Oracle interprets input data and formats output data
precompile several program modules separately, then link them into one executable program
check the syntax and semantics of embedded SQL data manipulation statements and PL/SQL blocks
access Oracle databases on multiple nodes concurrently using SQL*Net
use arrays as input and output program variables
precompile sections of code conditionally so that your host program can run in different environments
interface with tools such as Oracle Forms and Oracle Reports through user exits written in a high-level language
handle errors and warnings with the ANSI-approved status variables SQLSTATE and SQLCODE, and the SQL Communications Area (SQLCA) and WHENEVER statement
use an enhanced set of diagnostics provided by the Oracle Communications Area (ORACA)