J'ai une table (trackedinfo
) dans ma base de données qui contient les colonnes suivantes (colonnes obtenues en exécutant PRAGMA table_info(trackedinfo);
)
Le problème est que même si la colonne sendok
existe, lors de l'exécution d'une requête sur la base de données avec ce champ, elle génère une erreur.
Exemples de requêtes:
SELECT * FROM trackedinfo WHERE sendok IS NULL;
SELECT sendok FROM trackedinfo;
Erreur:
SQLITE_ERROR: SQL error or missing database (no such column: sendok)
Mais, si je lance une requête en sélectionnant tous les champs, cela m'apporte les informations concernant sendok
:
Voici la commande CREATE
de la base de données:
CREATE TABLE trackedinfo
(
id INTEGER PRIMARY KEY,
date_time_start TEXT,
date_time_end TEXT,
tracked_name TEXT,
tracked_Origin TEXT,
tracked_maker TEXT,
tracked_version TEXT,
tracked_type TEXT,
sendok TEXT,
tracked_id TEXT
);
[~ # ~] modifier [~ # ~]
Cela se produit également avec la colonne tracked_id
EDIT 2
Informations que j'ai obtenues en exécutant .schema trackedinfo
CREATE TABLE IF NOT EXISTS "trackedinfo" ("id" INTEGER PRIMARY KEY, "date_time_start" TEXT, "date_time_end" TEXT, "tracked_name" TEXT, "tracked_Origin" TEXT, "tracked_maker" TEXT, "tracked_version" TEXT, "tracked_type" TEXT, "sendok " TEXT, "tracked_id " TEXT);
Le problème était que j'avais un espace à la fin du nom des colonnes, résolu le problème en supprimant ces espaces.
Avant:
CREATE TABLE IF NOT EXISTS "trackedinfo" ("id" INTEGER PRIMARY KEY, "date_time_start" TEXT, "date_time_end" TEXT, "tracked_name" TEXT, "tracked_Origin" TEXT, "tracked_maker" TEXT, "tracked_version" TEXT, "tracked_type" TEXT, "sendok " TEXT, "tracked_id " TEXT);
Après:
CREATE TABLE IF NOT EXISTS "trackedinfo" ("id" INTEGER PRIMARY KEY, "date_time_start" TEXT, "date_time_end" TEXT, "tracked_name" TEXT, "tracked_Origin" TEXT, "tracked_maker" TEXT, "tracked_version" TEXT, "tracked_type" TEXT, "sendok" TEXT, "tracked_id" TEXT);