应用系统二次开发中数据库数据读取的捷径

2013-12-13 10:29:57 电力信息化  点击量: 评论 (0)
摘要:应用系统的二次开发,一般通过ODBC等数据库驱动读取数据库数据,或者由开发厂商提供接口API函数。由于数据库驱动经过了很多中间环节,而且需要考虑到通用性、兼容性等各个方面,使性能、效率大打折扣;一般
                                   NULL,
                                   PAGE_READWRITE,
                                   0,
                                   SHMEMSIZE,
                                   “Share_Mem”);
    if (m_hMapObject==NULL) return FALSE;//创建共享内存失败
    lpvMem = MapViewOfFile(m_hMapObject, FILE_MAP_ALL_ACCESS, 0, 0, SHMEMSIZE));
    if (lpvMem==NULL)  return ;
Data =  (Datastru *)lpvMem; //取得共享内存的首地址
/****************往共享内存写数据********************/
strcpy(data->Station_name , Station_name );
strcpy(data->Line_name  , Line_name );
data->Line_size =  *Line_size;
data->Voltage_Grade =  *Voltage_Grade;
strcpy(data->Manager  , Manager  );
data->Voltage_value = *Voltage_value;
data-> Electricity = *Electricity;
/****************往共享内存写数据********************/
}
二、TCP/IP链路方式。
    1、在数据处理中心建立一个有效的连接侦听
    CSocket  m_srvrSocket;
    BOOL   flag=m_srvrSocket.Listen(5);  //侦听连接
    2、编写数据库的用户自定义函数,向数据处理中心发送数据:
void SQL_API_FN get _data (
SQLUDF_CHAR        Station_name [36] ,
SQLUDF_CHAR        Line_name [36] ,
SQLUDF_INTEGER     *Line_Size ,
SQLUDF_INTEGER     *Voltage_Grade,
SQLUDF_CHAR        Manager [36],
SQLUDF_ DOUBLE     *Voltage _value,
SQLUDF_ DOUBLE      *Electricity,)
{
char buf[2048];
    Datastru data;
 
strcpy(data.Station_name , Station_name );
strcpy(data.Line_name  , Line_name );
data.Line_size =  *Line_size;
data.Voltage_Grade =  *Voltage_Grade;
strcpy(data.Manager  , Manager  );
data.Voltage_value = *Voltage_value;
data. Electricity
大云网官方微信售电那点事儿

责任编辑:和硕涵

免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
我要收藏
个赞