Wrox Home  
Search P2P Archive for: Go

  Return to Index  

informix thread: Re: Informix - ADO Connection using Informix OLE DB provider


Message #1 by "Robert Rainville" <rrainville@g...> on Tue, 3 Sep 2002 21:10:24
Hi Robert,

Maybe you are trying to open your recordset on a wrong way, if you try open it
as adOpenForwardOnly your problem could be solved.

I think that the problem is that you're choosing a wrong type recordset. (just
for read).

I hope this can help you.

Bye!!!

Robert Rainville wrote:

> > Hi all - going crazy here trying to get a working ADO Connection using
> > Informix OLE DB provider from VB.
> >
> > I have installed the OLE DB provider provided with the Informix Client-
> SDK
> > 2.7, and set up the server and client parameters.
> >
> > I can open a connection to the database, and retrieve a Recordset, but
> > when I try to add a record I get the error "Current Recordset does not
> > support updating.  This may be a limitation of the provider, or of the
> > selected lock type."
> >
> > The connection code and recordset opening code are shown below.
> >
> > __________________________________________________________________
> > Dim conLocal As New ADODB.Connection
> > Dim rsLocal  As New ADODB.Recordset
> > Dim strSQL   As String
> >
> > 'Open connection (works OK)
> > conLocal.Open "Provider=Ifxoledbc.2;" & _
> >               "User ID=[USER ID];" & _
> >               "Password=[PASSWORD];" & _
> >               "Data Source=ew_it_pkw@c...;"
> >
> > strSQL = "SELECT * FROM TABLEX"
> >
> > 'Open recordset (works ok, but error if I try and set the optional
> > parameters)
> > rsLocal.Open strSQL, _
> >              conLocal
> >
> > rsLocal.AddNew 'Error occurs here
> > ____________________________________________________________________
> >
> >
> > Can any one thro any light on this?  Been searching via Google for
> hours,
> > with no breakthrough.
> >
> > Many thanks,
> >
> > Gareth.
>
> As dum as this may seems try using this SQL statement instead
>
>  strSQL = "SELECT * FROM tablex"
>
> put the table name in lowercase
> I've had the problem with DataDirect OLEDB provider
> because when the provider tries to access informix.systables and syscolumns
> to determine the primary key it does not find it because table names are
> stored in lowercase in the dictionary
>
> also do not try to use UpdateBatch() on the recordset
> you'll get an access violation
> last time I tried it did even with the new SDK 2.80


  Return to Index