Skip to Content.
Sympa Menu

freetds - Re: [freetds] SQLBindParameter incorrectly binds as varchar

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: Frediano Ziglio <freddyz77 AT tin.it>
  • To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
  • Subject: Re: [freetds] SQLBindParameter incorrectly binds as varchar
  • Date: Mon, 30 Aug 2004 16:46:09 +0200

Il ven, 2004-08-27 alle 17:01, Brad Midgley ha scritto:
> Is SQLBindParameter being misused here by openldap?
>
> oc_id is an unsigned long and the call is made like:
>
> SQLBindParameter( sth, (SQLUSMALLINT)(1),
> SQL_PARAM_INPUT, SQL_C_ULONG, SQL_INTEGER,
> 0, 0, (SQLPOINTER)(&oc_id), 0,(SQLINTEGER*)NULL )
>
> But rather than being bound as an integer, it's bound as a varchar and
> chokes when the query is executed.
>

Perhaps openldap bound again this parameter later ?? Can you post
unixODBC log ??

> > backsql_oc_get_attr_mapping(): error executing at_query
> > "SELECT
> > name,sel_expr,from_tbls,join_where,add_proc,delete_proc,param_order,expect_return,sel_expr_u
> >
> >
> > FROM ldap_attr_mappings WHERE oc_map_id=?"
> > for objectClass "inetOrgPerson"
> > with param oc_id="1"
> > Return code: -1
> > Native error code: 257
> > SQL engine state: 37000
> > Message: [unixODBC][FreeTDS][SQL Server]Implicit
> > conversion from datatype 'VARCHAR' to 'NUMERIC' is not allowed. Use the
> > CONVERT function to run this query.
>
> I'm using freetds 0.62.4 (to sybase 12.0) and openldap-2.2.15. Also
> running redhat packages: unixODBC-2.2.8-2.3.0.2,
> unixODBC-devel-2.2.8-2.3.0.2

It seems that some Sybase prepare stuff require SQLDescribeParam and
related (still not supported).

freddy77






Archive powered by MHonArc 2.6.24.

Top of Page