Beispiel #1
0
static PyObject *
put(PyObject *self,PyObject *args){
    const char *dbname;
    const char *stext;
    const int *kid;
    int ecode;
    bool result;
    TCIDB *idb;
    if (!PyArg_ParseTuple(args, "sis", &dbname, &kid, &stext))
        return NULL;
    /* create the object */
    idb = tcidbnew();
    /* open the database */
    if(!tcidbopen(idb, dbname, IDBOCREAT | IDBOWRITER)){
        ecode = tcidbecode(idb);
        fprintf(stderr, "open error: %s\n", tcidberrmsg(ecode));
    }
    result = tcidbput(idb,(int64_t)kid,stext);
    /* close the database */
    if(!tcidbclose(idb)){
        ecode = tcidbecode(idb);
        fprintf(stderr, "close error: %s\n", tcidberrmsg(ecode));
    }
    /* delete the object */
    tcidbdel(idb);
    return Py_BuildValue("b",result);
}
Beispiel #2
0
static PyObject *
put(PyObject *self, PyObject *args){
    const char *data_dir;
    const int *key;
    const char *val;
    TCIDB *idb;
    int ecode;
    bool result;

    if (PyArg_ParseTuple(args, "sis", &data_dir, &key, &val)) {
        /* create the object */
        idb = tcidbnew();

        /* open the database */
        if(!tcidbopen(idb, data_dir, IDBOWRITER | IDBOCREAT)){
            ecode = tcidbecode(idb);
            fprintf(stderr, "open error: %s\n", tcidberrmsg(ecode));
            return NULL;
        }

        /* retrieve record */
        result = tcidbput(idb, (int64_t) key, val);

        /* close the database */
        if(!tcidbclose(idb)){
            ecode = tcidbecode(idb);
            fprintf(stderr, "close error: %s\n", tcidberrmsg(ecode));
            return NULL;
        }
        
        /* delete the object */
        tcidbdel(idb);

        return Py_BuildValue("b", result);
    } 
}