Help needed in on-line access of Oracle server.

From: Michael Stowe <Michael.Stowe_at_f573.n115.z1.nwugate.fidonet.org>
Date: Mon, 26 Sep 94 09:58:59 -0500
Message-ID: <780577139_at_f573.n115.z1.ftn>


  • Quoting Guo Wei to All dated 09-24-94 ***
    > bad weather, mechanical problems or air traffic control). I am
    > responsible for developing the models and writing the solver engine in C.
    > Since I am not a database people and I've never used Oracle before and I
    > do need to access the info on the database server in real-time as
    > input to my model....

As a project manager, I would call this situtation a RED FLAG. I would not often recommend that a database novice be responsible for developing a database model, particularly one that needs to be accessed quickly. Furthermore, a very good model is required when moving from a legacy system to ensure that the new database does not suffer from the inefficiencies and kludges of the legacy system. My first recommendation, therefore, is to hire somebody who is an Oracle DBA and Modeling expert to help. You will save yourself a LOT of time and money.

That being said, let's assume that you have a limited budget, lots of time, and can afford delays and backtracking. First get a book on structured modeling, and learn modeling techniques. Then approach the Oracle database with this knowledge, using a the DBA manual set as well as a volume like Oracle 7: The Complete Reference. Preferably, get some training. Expect about three months if you take the training, six months if you don't, to learn what you will need for the project.

> I can inmagine two ways to access the database:
> 1. Embed some access commands in my C codes.
> Problem is, how? Do I use imbedded SQL commands or function calls
> from Oracle?

You are free to do either, using Pro*C or OCI respectively. OCI is generally much faster, but uses lower-level function calls. For speed, there are several techniques you should use beyond the OCI (array fetching, cursor holding, etc.)

> 2. If I can't imbed the commands in my C codes, then I can use SQL to
> query the database server separately and output the results to a
> text file and then read the file from my program. But since I need
> to access
> the database server in real-time and each time the info may be
> different,
> it should be quick.

This would not be a good approach, and does not really warrant further discussion.

I have seen several Oracle projects attempted by UNIX C veterans unfamiliar with Oracle. They have always turned out poorly designed, badly performing, and impossible to maintain. (Usually, the database is blamed for their failure.) I sincerely hope your experience will be better. Received on Mon Sep 26 1994 - 15:58:59 CET

Original text of this message