c++builder6.0 数据库查询函数select * into 功能的实现

版权声明:本文为博主原创文章,未经博主允许不可以转载。 https://blog.csdn.net/aasmfox/article/details/84526166

powerbuilder 中的可以直接使用 select a,b,c into :a,:b,:c from table where id = :id ;这样的脚本直接获取数据库的数据。

在C++builder中的如何实现呢?

1.C++builder 中的函数设计

int a,b,c 

int id = 100 ; 

String sql = "select a,b,c into :d,:d,:d from table where id = %d"

function int db_select(String sq,...)

{

1.统计 into ... from 之间的 [out]类型的变量地址,保存类型,和内存地址 TVarRec* pVar生成数组

2.获取[id]类型的参数,Var_arg各个类型的实际数据

3.从新生成SQL语句

4.查询数据库,

4.1赋值Pvar数组的值

}

实际要完成的代码如下

int a,b,c 

int id = 100 ; 

int ret   =db_select("select a,b,c into :d,:d,:d from table where id = %d",&a,&b,&c,id) ; 

[out]类型变量,函数传入变量的地址,:d表示number类型数据

[id] 类型变量,传入的是实际值,可以根据%d标识,使用va_arp(ap,int) 来获取直接数据。

猜你喜欢

转载自blog.csdn.net/aasmfox/article/details/84526166