Visualizzazione dei risultati da 1 a 2 su 2

Discussione: [C] Errore SQLite3

  1. #1

    [C] Errore SQLite3

    Ciao a tutti!
    Ho avuto un problema con SQLite3 per C (amalgamation version, compresa di sqlite3.h, sqlite3.c e sqlite3.def), praticamente quando cerco di creare uno statement da database aperto, mi da quest'errore:
    library routine called out of sequence
    Questo è il codice:
    Codice PHP:
    #include <stdio.h>
    #include <string.h>
    #include "sqlite3.h"

    sqlite3 *db;

    void OpenDatabase(const char *db_name){
        
    char name[100];
        if(!
    strstr(db_name".db")){
            
    sprintf(name"%s.db"db_name);
        }
        
        
    char *fname = (char *)name;
        
        
    FILE *stream;
        
    stream fopen(fname"r");
        
        
    int rc sqlite3_open(fname, &db);
        if(
    rc){
            
    DieWM("sqlite.c""cannot open database.");
        }
        if(
    streamSuccess("sqlite.c""Database opened successfully!\n");
        else 
    Success("sqlite.c""Database created and opened successfully!\n");
    }

    sqlite3_stmt DatabaseQuery(const char *query, const char *INTERNALint line){
        
    sqlite3_stmt stmt;
        
    int prep;
        
    prep sqlite3_prepare(&dbquerystrlen(query)+1, &stmtNULL);
        if(
    prep != SQLITE_OK){
            
    char cstring[100];
            
    sprintf(cstring"%d: DatabaseQuery: %s"linesqlite3_errmsg(&db)); 
            
    DieWM(INTERNAL, (char *)cstring);
        } 
        return 
    stmt;
    }

    const 
    unsigned char *GetColumnString(sqlite3_stmt stmtint column){
        const 
    unsigned char *result sqlite3_column_text(stmtcolumn);
        return 
    result;
    }

    int GetColumnInteger(sqlite3_stmt stmtint column){
        
    int result sqlite3_column_int(stmtcolumn);
        return 
    result;

    Il database lo apre correttamente, ma la creazione dello statement non va..

  2. #2
    Risolto. Soluzione:
    Codice PHP:
    sqlite3 *db
    non deve trovarsi fuori una funzione.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.