C / C ++程序连接到32位DB2和64位DB2同时
题
是否有可能成功地创作在于在32位和64位DB2实现操作* IX操作系统一个C / C ++程序同时?
的确切要求是从一个32位DB2数据库中读取和写入到64位的DB2数据库中。
解决方案
由于C通用客户端使用网络连接,就没有明显的理由在32位的客户端不应该连接到一个32位或64位的服务器(或两者上单独的连接)。同样的意见适用于64位客户端。使用客户端和服务器之间进行通信的协议DRDA应确定。
我可以确切地回答为Informix(你并没有问) - 我使用32位或64位ESQL / C连接到32位或64位IDS服务器没有问题。唯一的限制是一个共享存储器连接上;然后在客户端和服务器必须具有相同的“bittiness”的。但是网络连接和本地(流,插座)连接是中性的。
其他提示
我想你的问题是,你必须同时加载这两个库。在使用两个-l选项可执行你不能同时连结,因为符号的名字冲突。如果是这样的问题,dlopen的,如果你的朋友。
#include <dlfcn.h>
void * handle=dlopen(filename,RTLD_NOW|RTLD_GLOBAL);
bool (*some_function)(char * name);
some_function=(bool (*)(char *))dlsym(handle,"name_of_some_function");
if (some_function("test")) {
....
} else {
....
}
由于我不知道我的DB2帮不了你任何进一步的,但如果这是问题,你现在应该拥有的一切去解决问题。
不隶属于 StackOverflow