Je sais qu'il y a probablement une chose simple qui me manque, mais je me suis cogné la tête contre le mur depuis une heure ou deux. J'ai une base de données pour l'application Android sur laquelle je travaille actuellement (Android v1.6) et je veux juste insérer un seul enregistrement dans une table de base de données. Mon code se présente comme suit:Android insérer dans la base de données sqlite
//Save information to my table
sql = "INSERT INTO table1 (field1, field2, field3) " +
"VALUES (" + field_one + ", " + field_two + ")";
Log.v("Test Saving", sql);
myDataBase.rawQuery(sql, null);
la variable myDatabase est un objet SQLiteDatabase qui permet de sélectionner les données de fin d'une autre table dans le schéma. L'enregistrement semble fonctionner correctement (aucune erreur dans LogCat) mais quand je copie la base de données de l'appareil et l'ouvre dans le navigateur sqlite le nouvel enregistrement n'est pas là. J'ai également essayé d'exécuter manuellement la requête dans le navigateur sqlite et cela fonctionne très bien. Le schéma de table pour table1 est _id, field1, field2, field3.
Toute aide serait grandement appréciée. Merci!
Je recommande fortement d'utiliser des paramètres ("?") Plutôt que de concaténer vos chaînes dans la requête. Vous courez le risque de requêtes malformées ou d'attaques par injection. –
@JimBlackler Pouvez-vous donner un petit exemple de l'utilisation de '?' Pour la requête ci-dessus. J'ai googlé mais je n'ai pas pu en trouver un. – VenomVendor