您的位置:首页 > 数据库 > Oracle

Oracle OCI programming and Borland C++ Builder

2009-11-12 09:43 1206 查看
As you may know, Oracle dropped support for Borland Compilers in OCI
some time back. Well, it isn't all that hard to set up again.

I'm running 9i Release 2 Enterprise Edition on this PC at work and I am
using Borland C++ Builder 6 to 'play' with OCI programming - I intend to
build a set of components eventually, but I need to know what I'm doing
first !

I remember trying in the past to get OCI to work - but had no luck,
however, this time I decided not to give in so easily. I was depressed
to find that the old Borland folder under <oracle_hjome>/oci/lib has
gone - looks like only MS Visual C is supported - and we all know that
MS and Borland have a different OMF format and there is much wailing and
gnashing of teeth to get Borland talking to DLLs etc created with MSVC
and vice versa.

There are docs on Metalink which go into great detail about these
differences and how it can screw up your life to use a Borland compiler
- but I suspect these are now out of date.

Here is what you have to do instead (the following uses my paths -
adjust for your setup) :

Open a DOS window

cd e:/oracle/ora92/oci/lib
mkdir borland
cd borland


Assuming that the CBuilder bin directory is on your path .....

implib -a oci.lib <oracle_home>/bin/oci.dll
exit

That has created an import library to be added to any OCI projects you
want to create. The '-a' bit is required as it prepends an underscore to
the exported module names in the dll. This is what used to cause so many
problems with MS/Borland libraries and stuff in the past.

The rest is simple, run up C++ Builder and open one of the Oracle
samples - I used CDemo6 - you'll be asked to create a project to run it,
do so then save it as BOR_CDemo6.

Project | options and on the directories tab, add
<oracle_home>/oci/include to the includes path.


Then Project | add to project and add <oracle_home>/oci/borland/oci.lib
to the project.


Compile & run - et viola (as French musicians would say) an OCI program
compiled and running with Borland tools.

Now you've got that working you have no excuse for not downloading the
OTL (Oracle Template Library) and using it instead - it is up to release
4.0.36 now and supports Oracle 9i.

I really hope this helps someone - I could have done with this help
years ago myself. I'm off to try my hand at 'proper' OCI programming for
a bit now. <insert big smug grin here>

Cheers,
Norman.

-------------------------------------
Norman Dunbar
Database/Unix administrator
Lynx Financial Systems Ltd.
mailto:Norman.Dunbar@LFS.co.uk
Tel: 0113 289 6265
Fax: 0113 289 3146
URL: http://www.Lynx-FS.com
-------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: