Solved

Low-level TCP/IP connection API in Oracle database 10g

Posted on 2008-09-29
8
648 Views
Last Modified: 2013-12-18
A customized web server, which wants to connect Oracle database 10g with TCP connection in low level.
If any expert here can find the links/URLs/codes for me, which talk about low-level TCP connection in Oracle database 10g with C/C++, I greatly appreciate it. Simply speaking, the low-level API C/C++ codes making connection to Oracle database 10g can use to develop their own product.
0
Comment
Question by:jl66
  • 4
  • 4
8 Comments
 
LVL 35

Expert Comment

by:johnsone
ID: 22597420
The lowest level documented connection method to Oracle that I know if is OCI (Oracle Call Interface).

It can definitely be used from C/C++.

Be aware that things change version to version at this level and code may need to be rewritten for different Oracle versions.

A slightly higher level of connection can be acheived with Pro*C.  The trade off is a little less powerful, a little higher level connection, but easier to maintain (code should not need to be rewritten for newer versions).

I have Pro*C code that was originally written against Oracle 7, that compiles and works fine with Oracle 9 with no modifications.
0
 

Author Comment

by:jl66
ID: 22601402
johnsone,
Thanks for your info. What I try to find out is hot to code TCP connection to Oracle database (possible in packet level): initial connection, handshake, establish connection, authentication, etc. For example, in the embedded system, how to write the interface in this system to connect the Oracle database? It seems it relates the very low level calls. Can you dig in a little bit?
0
 
LVL 35

Expert Comment

by:johnsone
ID: 22605199
I do not think it is possible at the level you are trying to do it.  At least I don't believe it is documented.

The process of simply establishing a connection is pretty complex.  The listener needs to be contacted on a specific port and then the actual database communication can be passed off to another port.

Try setting the trace level on the client side to the highest value (I think 15) and connect to the database normally.  That should give you an idea of the amount of processing and packets involved in making the connection.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:jl66
ID: 22606208
johnsone,
Thanks for info.
It must be documented in somewhere. Otherwise how does the embedded software vendor develop the interface? In the other words, how should Websphere (web server owned by IBM) connect to Oracle database? All we can see is high level wrapper functions. Inside are there any low level TCP calls?
0
 
LVL 35

Expert Comment

by:johnsone
ID: 22606241
For the most part, vendors use OCI.

In order to use a product like Websphere, you still need to install some Oracle components.
0
 

Author Comment

by:jl66
ID: 22681690
Johnsone,

Sorry I was out of reach for a while. Continue what you said. I have to install certain Oracle components in the customized web server side in order for Oracle to work. That means "Oracle components" here is an Oracle client. Is that any place to find how to write a 'simple' Oracle client?
0
 
LVL 35

Accepted Solution

by:
johnsone earned 450 total points
ID: 22681845
You would need at least some part of an oracle client.  If you are looking at the OCI level, there is an instant client, which just contains some libraries and would get things at the OCI level working.

I'm not aware of any public documentation that would allow you to write a simple client.  I would think that you need to be an Oracle partner and sign all kinds of documents before they would give you that level of documentation.
0
 

Author Closing Comment

by:jl66
ID: 31501190
Maybe what I expected is really hard to find. Thanks.
0

Featured Post

Don't miss ATEN at NAB Show April 24-27!

Visit ATEN at NAB Show to learn how our "Seamlessly Entertaining" solutions deliver fast, precise video streaming without delays for the broadcasting and media environment. ATEN will showcase its 16x16 Modular Matrix Switch (VM1600) and KVM Over IP Solution (KE6900 series).

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Online collaboration is quickly becoming embedded in the workplace, and its benefits are tangible. See what the current landscape looks like and what the future holds for collaboration tools and the future of work.
From implementing a password expiration date, to datatype conversions and file export options, these are some useful settings I've found in Jasper Server.
This video shows, step by step, how to configure Oracle Heterogeneous Services via the Generic Gateway Agent in order to make a connection from an Oracle session and access a remote SQL Server database table.
This video shows setup options and the basic steps and syntax for duplicating (cloning) a database from one instance to another. Examples are given for duplicating to the same machine and to different machines

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question