Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

DSNless ODBC connection

31 views
Skip to first unread message

Patrick

unread,
Dec 17, 2009, 3:51:12 PM12/17/09
to
Let me start by saying this is my first interaction with Ingres.

I have a client on Ingres 2.6. I am attempting to make dsn-less
connection to an Ingres database in my Windows application. I have
been successful at setting up the vnode, connecting using Visual DBA,
setting up odbc and testing the connection, and then connecting to the
database in my app using the odbc dsn.

Now, I am trying to figure out how to perform a dsn-less connection. I
am getting an error

User provided a vnode as part of the database name (vnode::dbname),
but connection information for that vnode is missing. Enter connection
information for the vnode using NETUTIL.

First I have some questions (again bear with me here). Can an ODBC
connection be made directly to the database without using the vnode?
The vnode is setup on my local machine, and it seems that odbc is
making a connection to it first and going through the vnode before
hitting the database server. Can I bypass it?

All other odbc drivers that I've worked with allow you to interact
directly with the target database server. Can this be done with the
Ingres ODBC driver? If so, would the connection string look like?

Thanks,
Patrick

Paul White

unread,
Dec 17, 2009, 4:56:32 PM12/17/09
to Ingres and related product discussion forum
Hi Patrick,

ODBC connections need to go through the vnode on the client.
A JDBC / .NET connection can connect directly without needing a vnode
providing you are running jdbc server component (2.6) or Data Access Server
(9.x)

What is your client application?

Make sure you have the latest ODBC patch installed.
For Ingres 2.6 my old notes say Patch 9885.
It's a good idea to contact Ingres Support.

Regards

Paul White

Thanks,
Patrick
_______________________________________________
Info-Ingres mailing list
Info-...@kettleriverconsulting.com
http://ext-cando.kettleriverconsulting.com/mailman/listinfo/info-ingres


Jamesb

unread,
Dec 18, 2009, 7:20:41 AM12/18/09
to
You don't need a DSN or a VNODE as you can specify all the details
directly (but you do need the IngresNet client installed on the PC and
running i.e. iigcc and iigcn running).

The VB6 code below works for me. hostname is your db server hostname,
II is the listen address, iidbdb is the database name you want to
connect to + username and password should be obvious.


Dim objC As New ADODB.Connection
Dim objRs As ADODB.Recordset

objC.Open
("DRIVER=Ingres;SRVR=@hostname,wintcp,II;DB=iidbdb;UID=username;PWD=password")

objC.BeginTrans

Set objRs = objC.Execute("select table_name from iitables")

Debug.Print objRs(0)

objC.CommitTrans

objC.Close

Hope that helps.

Ingres Forums

unread,
Dec 18, 2009, 10:52:24 AM12/18/09
to

I do not think that VB code uses ODBC driver. It probably uses .NET
driver, which establishes direct connection to the RDBMS...


--
dejan
------------------------------------------------------------------------
dejan's Profile: http://community.ingres.com/forum/member.php?userid=13077
View this thread: http://community.ingres.com/forum/showthread.php?t=11502

Ingres Forums

unread,
Dec 18, 2009, 11:00:40 AM12/18/09
to

--------------------------------------------------------------------------------

> I do not think that VB code uses ODBC driver. It probably uses .NET
> driver, which establishes direct connection to the RDBMS...

This depends on the VB version. VB6 definitely doesn't use the .NET
driver.
The preferred method there is to use ADODB as in Jamesb's example


--
Bodo
------------------------------------------------------------------------
Bodo's Profile: http://community.ingres.com/forum/member.php?userid=16

Jamesb

unread,
Dec 20, 2009, 6:26:00 AM12/20/09
to
>> I do not think that VB code uses ODBC driver. It probably uses .NET
>> driver, which establishes direct connection to the RDBMS...

My example was definitely VB6 code using the Ingres ODBC driver (and
Ingres Net) and not using the .NET Dataprovider and it's associated
iigcd server side process.

I was just illustrating the fact that you don't actually need to create
an ODBC Datasource (DSN) or an Ingres VNODE as you can include all the
required details in the connection string. But you do have to have
Ingres Net and the ODBC driver installed on each local PC where you want
the code to run.

0 new messages