Skip site navigation (1) Skip section navigation (2)

Re: 64-bit type in SQLBindParameter

From: Hiroshi Inoue <Inoue(at)tpf(dot)co(dot)jp>
To: Scot Loach <sloach(at)SANDVINE(dot)com>
Cc: "'pgsql-odbc(at)postgresql(dot)org'" <pgsql-odbc(at)postgresql(dot)org>
Subject: Re: 64-bit type in SQLBindParameter
Date: 2002-10-24 23:42:11
Message-ID: 3DB88553.BF2B903B@tpf.co.jp (view raw or flat)
Thread:
Lists: pgsql-odbc
Scot Loach wrote:
> 
> Is it possible to use 64-bit types for bound queries?
> 
> Here's my setup:
> FreeBSD 4.7
> UnixODBC 2.2.0
> PostgreSQL 7.2.1
> PostgreSQL/UnixODBC driver 7.2.1
> 
> I'm using the BIGINT type for my column.
> The program below prints out the error message:
> 
> [unixODBC]Error while executing the query;
> ERROR:  parser: parse error at or near ")"
> 
> It works if I change the SQL_BIGINT to SQL_INTEGER, but
> it only uses 32 bits of the number in that case.
> 
> #include <stdio.h>
> #include <sql.h>
> #include <sqlext.h>
> 
> main()
> {
>     SQLHENV     env;
>     SQLHDBC     dbc;
>     SQLINTEGER  val = 0;
>     unsigned long long ll = 6000000000;
> 
>     SQLAllocEnv(&env);
>     SQLAllocConnect(env, &dbc);
>     SQLConnect(dbc, (SQLCHAR*)"my_db", SQL_NTS, (SQLCHAR*)0, 0, (SQLCHAR*)0,
> 0);
>     SQLCHAR sql[] = "INSERT INTO my_table (my_column) VALUES (?)";
> 
>     HSTMT hstmt;
>     SQLAllocStmt(dbc, &hstmt);
>     SQLPrepare(hstmt, sql, SQL_NTS);
>     SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_DEFAULT, SQL_BIGINT,
> 0, 0, &ll, 0, &val);

SQL_C_DEFAULT for SQL_BIGINT is SQL_C_CHAR.
You can't specify SQL_C_SBIGINT(UBIGINT) for the C Data Type
under the driver.

regards,
Hiroshi Inoue
	http://w2422.nsk.ne.jp/~inoue/

In response to

pgsql-odbc by date

Next:From: Scot LoachDate: 2002-10-25 01:38:40
Subject: Re: 64-bit type in SQLBindParameter
Previous:From: Zuhra.SanusiDate: 2002-10-24 23:27:48
Subject: Re: connection fails

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group