2017-09-27 4 views
0
override func viewDidLoad() { 
    super.viewDidLoad() 
    let path = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first! 
    let db = "\(path)/ishop.sqlite3" 

    let name: [CChar]? = db.cString(using: String.Encoding.utf8) 
    getInput(UnsafeMutablePointer<Int8>(mutating: name!)) 

} 

int getInput (char nombase []) {impossible à ouvrir la base de données (sqlite utilisant c dans rapide)

sqlite3 *db; 
sqlite3_stmt *res; 

int rc = sqlite3_open_v2("dbname", &db, SQLITE_OPEN_CREATE | SQLITE_OPEN_READWRITE | SQLITE_OPEN_URI |SQLITE_OPEN_MAIN_DB , NULL); 

if (rc != SQLITE_OK) { 


    fprintf(stderr, "Cannot open database: %s\n", sqlite3_errmsg(db)); 
    sqlite3_close(db); 

    return 1; 
} 
+0

utiliser cette bibliothèque pour sqlite https://github.com/ccgus/fmdb –

+0

merci pour la suggestion mais j'ai besoin de le faire en utilisant C API –

Répondre

0
sqlite3_open_v2("dbname", 

Le premier paramètre est une chaîne, constituée par les six lettres dbname .

Si vous souhaitez utiliser le paramètre dbname, ne le mettez pas entre guillemets.

+0

merci ça marche –