📄 dbapp.cp
字号:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <memory.h>
#include <sys/types.h>
#include "link.h"
#include "etc.h"
EXEC SQL INCLUDE SQLCA;
SmsData_t *sm;
int DB_ScanSmsData()
{
EXEC SQL Begin Declare Section ;
char cellphone[16];
char data[140 + 1];
int iid;
EXEC SQL End Declare Section ;
SmsData_t *head = NULL, *p = NULL, *node = NULL;
int FirstNode = TRUE;
int errcode, i = 1;
EXEC SQL WHENEVER SQLERROR CALL error_handler() ;
EXEC SQL WHENEVER SQLWARNING CALL warning_handler() ;
EXEC SQL WHENEVER NOT FOUND CALL notfound_handler() ;
EXEC SQL DECLARE cur_sms CURSOR FOR SELECT iid, inumber, idata FROM tb_ob_sms WHERE iflag = 2 OR iflag = 6 ;
EXEC SQL OPEN cur_sms;
while(1)
{
memset( cellphone, 0, sizeof(cellphone));
memset( data, 0, sizeof(data));
EXEC SQL FETCH cur_sms INTO :iid, :cellphone, :data ;
if ( sqlca.sqlcode < 0 )
{
errcode = sqlca.sqlcode ;
return( errcode) ;
}
if ( sqlca.sqlcode == 100 ) break ;
if( FirstNode == TRUE )
{
if( ( head = (SmsData_t *)CreateNode() ) == NULL )
{
fprintf(stdout, "Create head error\n");
return FAILURE;
}
head->iid = iid;
AllTrim(cellphone);
AllTrim(data);
strcpy(head->inumber, cellphone);
strcpy(head->idata, data);
//printf("%d|%s|%s\n", i, head->inumber, head->idata);
p = head;
FirstNode = FALSE;
continue;
}
if( ( node = (SmsData_t *)CreateNode() ) == NULL )
{
fprintf(stdout, "Create node error\n");
return FAILURE;
}
node->iid = iid;
AllTrim(cellphone);
AllTrim(data);
strcpy(node->inumber, cellphone);
strcpy(node->idata, data);
fprintf(stdout,"%d|%s|%s\n", ++i, node->inumber, node->idata);
p->next = node;
p = node;
}
EXEC SQL CLOSE cur_sms ;
sm = head;
return SUCCESS;
}
void DB_SetSmsStatus(int id, int status)
{
EXEC SQL Begin Declare Section ;
int tmpId;
int tmpStatus;
EXEC SQL End Declare Section ;
EXEC SQL WHENEVER SQLERROR CALL error_handler() ;
EXEC SQL WHENEVER SQLWARNING CALL warning_handler() ;
EXEC SQL WHENEVER NOT FOUND CALL notfound_handler() ;
tmpId = id;
tmpStatus = status;
EXEC SQL UPDATE tb_ob_sms SET iflag = :tmpStatus WHERE iid = :tmpId;
//return sqlca.sqlcode;
fprintf(stdout ," Update tb_ob_sms OK!!!\n");
return ;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -