首页 > 数据库技术 > 详细

sqlite 遇到的问题

时间:2014-12-05 12:34:43      阅读:328      评论:0      收藏:0      [点我收藏+]

#define UPDATE_PROPINFO_SQL        "UPDATE "USER_PROP_TABLE" SET " PLAYER_PROPS" = ‘%s‘ WHERE id = %d;"
#define DEFAULT_PLAYER_ID                   1

 

下面这个方法一直报语法错误,让人很抓狂。

int Player::updatePropInfo()
{
    char* sql = sqlite3_mprintf(UPDATE_PROPINFO_SQL,getPropsTimeStr().c_str(),DEFAULT_PLAYER_ID);
    string retStr = sql;
    sqlite3_free(sql);
    return GSQLITE3->exec(sql, retStr);
}

string Player::getPropsTimeStr()
{
    string propsTimeStr = "";
    for (int i = 0; i < m_propsTimes.size() ;i++ )
    {
        char temp[64] = {0};
        sprintf(temp,"%d",m_propsTimes[i]);
        propsTimeStr.append(temp);
        if (i < (m_propsTimes.size() - 1))
        {
            propsTimeStr.append(" ,");  //TIP :这个空格不能省
        }
    }
    propsTimeStr.append("");
    return propsTimeStr;
}

    vector<int>         m_propsTimes; //一个道具堆叠数目的数组

最后发现是在上边的propsTimeStr.append(" ,");这句中 逗号前面的空格没有写,空格坑死人。

sqlite 遇到的问题

原文:http://www.cnblogs.com/ziqiongbuxi/p/4146184.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!