All pastes #610106 Raw Edit

Mine

public text v1 · immutable
·published 2007-07-09 08:13 UTC
rendered paste body
typedef struct imdbMovie {
    //! The imdb ID for the movie
    char * id;    
    //! The title of the movie
    char * title; 
    //! The year the movie was made
    char * year;  
    //! The date of when the movie entry was last updated
    char * lu2d;  
} imdbMovie;


int callback_Movie(void * data, int argc, char **argv, char **azColName) {
    imdbMovie *pMovie = (imdbMovie *)data;
    // 0 = id, 1 = title, 2 = year, 3 = lastUpdated
    if (argc != 4) {
        return 0;
    }
    pMovie->id    = argv[0];
    pMovie->title = argv[1];
    pMovie->year  = argv[2];
    pMovie->lu2d  = argv[3];
    return 1;
}

int imdbDataBase_GetMovieFromID(char * id, imdbMovie * movie) {
    int rc;
    char queryInfo [44];
    sprintf( queryInfo,  "select * from imdbTitles where id = %s;", id );
    rc = sqlite3_exec(imdbDB, queryInfo, callback_Movie,  (void *)movie, 0);
    return rc;
}

int main() {
    char strIMDBID1[7];
    char strIMDBID2[7];
    imdbMovie * movie1 = new imdbMovie; 
    imdbMovie * movie2 = new imdbMovie;
    
    imdbID1 = 813715;
    imdbID2 = 411008;

    sprintf(strIMDBID1,"%i",imdbID1);
    sprintf(strIMDBID2,"%i",imdbID2);


    /* If no Cache first imdbLookup the two movies */
    printf("|%s|%s|",strIMDBID1,strIMDBID2);
    imdbDataBase_GetMovieFromID(strIMDBID1, movie1 );
    imdbMoviePrint(movie1);
    imdbMoviePrint(movie2);  
    imdbDataBase_GetMovieFromID(strIMDBID2, movie2 );
    // now both movie1 and movie2 is the same :(
    imdbMoviePrint(movie1);
    imdbMoviePrint(movie2);
}