Home » Developer & Programmer » Precompilers, OCI & OCCI » Newbie problem with versions and compatibility
Newbie problem with versions and compatibility [message #161614] Mon, 06 March 2006 05:29 Go to next message
Messages: 1
Registered: March 2006
Junior Member

I'm trying to get started with OCI (using C) and I'm having problems with versions and libraries. I've got Oracle on Solaris8. The demo programs supplied with Oracle have names like oci02.c and they contain function calls such as olog(), ofetch(), oclose() etc. It looks to me like these are OCI version7 functions. I can also compile these demo programs successfully (with gcc) using essentially the supplied makefile.

But more recent OCI documentation (OCI v8/9?) uses function names like OCIInitialize(),OCILogon(), OCIHandleAlloc(). I'd prefer to work with these newer functions, as it looks like there's quite a bit of architecture change underlying the new names, and I don't want to have to rewrite everything in the near future. I get the impression from things picked up on the web that the newer OCI version is applicable to Oracle, but when I try to link a simple test program with these new OCI...() calls it can't resolve a bunch of symbols beginning "na..." such as naeeta, nautab, etc.

What exactly is the problem here? - Do I have to work with the OCI-7 functions on Solaris8 if my Oracle is, or are my libraries the wrong version? Or is everything already there and I just need a different makefile or compilation procedure? I'm particularly confused because oci.h is there among the supplied demo files, and I understood oci.h to correspond to the OCI v8 libraries anyway, so my initial assumption was that I should already have the necessary materials to use OCI v8 ... but in that case, why are v7 demo programs included with my Oracle? (a quick look at a couple of other systems indicated the same demo programs are also supplied with Oracle8.1.7.4 on Linux, but the ones with Oracle8.1.7.4 on Windows seem newer/different and have names of the form cdemo1.c etc).

Re: Newbie problem with versions and compatibility [message #167276 is a reply to message #161614] Wed, 12 April 2006 04:10 Go to previous message
Michael Hartley
Messages: 110
Registered: December 2004
Location: West Yorkshire, United Ki...
Senior Member


My advise to you would be to forget your 8i installation, this is now out of support anyway. Either get yourself a 9i installation on your desktop or 10g and start learning OCI from 9i onwards.

10g has a number of issues because Oracle are so keen for us to migrate to the current release that they have stopped supporting Oracle Names in favour of OID (LDAP) though you can continue to use tnsnames.ora.

The current market take up on 10g is quite slow and I don't see many organisation making a bulk more to 10g just yet though the speed of change will increase around 2008 when support for 9i drops off the planet.

Probably a good piece of advice would be to go for 10g OCI and don't bother with 8.

Kind regards
Michael Hartley
Previous Topic: What is the usage of Pro*C?
Next Topic: OCI
Goto Forum:

Current Time: Sat Jan 28 19:26:27 CST 2023