![]() | ![]() | ![]() |
![]() ![]() ![]() |
case db_oracle:
r = sendCmd(REQ_ORACLEL_QUERY,sqlcmd,key,cache_mapstr(useCache),
NULL,(char **)&reply);
break;
case db_berkeleydb:
break;
default:
syslog(LOG_CRIT,"[%s]unknown backend server",fname);
break;
} /* switch */
/* let midware client know what happened */
if ( result && *result ) strcpy(result,reply);
if ( r != CMD_OK ) {
syslog(LOG_DEBUG3,"[%s]no reply,system error",fname);
return QUERY_SYS_ERR;
}
if ( !strcmp(reply,REP_DB_QUERY_FAIL) ) {
return QUERY_FAIL;
} else if ( !strcmp(reply,REP_DB_QUERY_NOTFOUND) ) {
return QUERY_NOTFOUND;
} else if ( !strcmp(reply,REP_DB_QUERY_MANYRECORD) ) {
return QUERY_FOUNDMANY;
} else {
return QUERY_OK;
}
} /* mid_query */
/*
*--------------------------------------------------------------
*
* mid_insert
*
*--------------------------------------------------------------
*/
midInsertResult
mid_insert(char *sqlcmd)
{
const char fname[]="mid_insert";
char *reply;
int r = 0;
if ( midInited == 0 ) {
mid_init(NULL);
}
switch ( dbserver ) {
case db_mysql:
r = sendCmd(REQ_MYSQL_INSERT,sqlcmd,NULL,NULL,NULL,(char **)&reply);
break;
case db_oracle:
r = sendCmd(REQ_ORACLE_INSERT,sqlcmd,NULL,NULL,NULL,
(char **)&reply);
break;
case db_berkeleydb:
break;
default:
syslog(LOG_CRIT,"[%s]unknown backend server",fname);
break;
} /* switch */
if ( r != CMD_OK ) {
syslog(LOG_DEBUG3,"[%s]no reply,system error",fname);
return INSERT_SYS_ERR;
}
if ( !strcmp(reply,REP_DB_INSERT_FAIL) ) {
return INSERT_FAIL;
} else {
return INSERT_OK;
}
} /* mid_insert */
(来源:灰狐动力)