473,398 Members | 2,380 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,398 software developers and data experts.

DB2 UDB 8.1.2 client: problem with SQLGetFunctions

Hello,

We have a problem with ODBC access involving API support. Our customer
has DB2 UDB 7.2.9 running as server on Windows NT. For clients with
UDB 7.1.1, there is no problem. For clients running 8.1.2, however,
not all API functions seem to be supported.

In our ODBC code, we call SQLGetFunctions with argument
SQL_API_ODBC3_ALL_FUNCTIONS and test for the following API support
(sorry about line wrapping here):
================
bool API_all = ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLBINDCOL ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLBINDPARAMETER ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLCOLATTRIBUTE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLDESCRIBECOL ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLDISCONNECT ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLEXECDIRECT ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLEXECUTE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLFETCHSCROLL ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLFREEHANDLE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETCONNECTATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETDESCFIELD ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETINFO ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETSTMTATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETTYPEINFO ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLNUMPARAMS ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLNUMRESULTCOLS ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLPREPARE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLROWCOUNT ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETCONNECTATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETENVATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETPOS ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETSTMTATTR ) == SQL_TRUE );

if ( !API_all )
throw XSqlException ( support_missing );
================

These are very basic APIs which our ODBC classes expect all the
databases to support ... we have never encountered this problem before
and were wondering if it is a problem with the client configuration?

Thanks.
Nov 12 '05 #1
2 1642
You may need db2jdbcbind for a downlevel server.
http://publib.boulder.ibm.com/infoce...help/index.jsp
search: db2jdbcbind

Not sure it will solve the problem though.

PM
"Bob Hairgrove" <bo**********@yahoo.com> a écrit dans le message de
news:67**************************@posting.google.c om...
Hello,

We have a problem with ODBC access involving API support. Our customer
has DB2 UDB 7.2.9 running as server on Windows NT. For clients with
UDB 7.1.1, there is no problem. For clients running 8.1.2, however,
not all API functions seem to be supported.

In our ODBC code, we call SQLGetFunctions with argument
SQL_API_ODBC3_ALL_FUNCTIONS and test for the following API support
(sorry about line wrapping here):
================
bool API_all = ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLBINDCOL ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLBINDPARAMETER ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLCOLATTRIBUTE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLDESCRIBECOL ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLDISCONNECT ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLEXECDIRECT ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLEXECUTE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLFETCHSCROLL ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLFREEHANDLE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETCONNECTATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETDESCFIELD ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETINFO ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETSTMTATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLGETTYPEINFO ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLNUMPARAMS ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLNUMRESULTCOLS ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLPREPARE ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLROWCOUNT ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETCONNECTATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETENVATTR ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETPOS ) == SQL_TRUE )
&& ( SQL_FUNC_EXISTS ( Supported_Functions,
SQL_API_SQLSETSTMTATTR ) == SQL_TRUE );

if ( !API_all )
throw XSqlException ( support_missing );
================

These are very basic APIs which our ODBC classes expect all the
databases to support ... we have never encountered this problem before
and were wondering if it is a problem with the client configuration?

Thanks.

Nov 12 '05 #2
"PM \(pm3iinc-nospam\)" <PM(pm3iinc-nospam)@sympatico.ca> wrote in message news:<98*********************@news20.bellglobal.co m>...
You may need db2jdbcbind for a downlevel server.
http://publib.boulder.ibm.com/infoce...help/index.jsp
search: db2jdbcbind

Not sure it will solve the problem though.


We aren't using Java, but C++ and ODBC (our own C++ wrapper classes
around the ODBC C API functions, no COM etc.)

It seems that the driver is reporting no support for SQLGetDescRec()
and SQLSetPos(). Apparently, as I stated in my first post, the OLDER
driver does support SQLSetPos (at least the customer said "it works").

Why would 7.x support it and 8.1.2 not?? SQLSetPos has been in the
specs since ODBC 1.0. (The server, BTW is running 7.something). We can
live without SQLGetDescRec, but dropping SQLSetPos from the wrapper
classes is plain silly. We implemented lots of things with that
function and it would entail a complete re-write of the classes.

Any help would be greatly appreciated.

Bob
Nov 12 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: Kathryn | last post by:
Hiya I have a problem with using some client side and server side scripting together in an ASP. I'm using VBScript. What I'm trying to achieve is this - - Page loads up and some server side...
15
by: Michael Rybak | last post by:
hi, everyone. I'm writing a 2-players game that should support network mode. I'm now testing it on 1 PC since I don't have 2. I directly use sockets, and both client and server do...
18
by: cjl | last post by:
Hey all: I know that it is silly in the age of Google to 'lose' something on the internet, but I recently checked out a project that had implemented a database with a subset of SQL in pure...
2
by: Rhino | last post by:
I am trying to verify that I correctly understand something I saw in the DB2 Information Center. I am running DB2 Personal Edition V8.2.1 on Windows. I came across the following in the Info...
11
by: Timothy Shih | last post by:
Hi, I am having a freezing issue with my application. My application serves several remotable objects, all of which must be initialized before their use. Furthermore, some of them depend on each...
6
by: Ken Allen | last post by:
I am relatively new to .Net and C#, but I hav ebeen programing in other languages and done some COM work for a number of years. I am attempting to understand how to map an older program...
2
by: J Huntley Palmer | last post by:
I am having a horrific time integrating uw-imap's c-client for imap support in php. The problem is a whole bunch of "Text relocation remains referenced against symbol" errors during linking....
0
by: khu84 | last post by:
Here is client server very simple code, seems to work with telnet but with with web client code gives blank output. Following is the server code:- <?php function...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.