Vérification de la syntaxe SQLite FTS (Recherche de texte intégral) et comment faire un seul terme ne pas rechercher

StackOverflow https://stackoverflow.com/questions/2156376

  •  23-09-2019
  •  | 
  •  

Question

Existe-t-il un moyen de déterminer si une requête de correspondance envoyée à une table FTS3 dans SQLite est valide? Actuellement, je ne découvre pas si l'expression n'est pas valide jusqu'à ce que j'essaie de l'exécuter, ce qui le rend un peu délicat. Je voudrais signaler à l'utilisateur que la syntaxe n'est pas valide avant même d'essayer de l'exécuter.

J'utilise SQLite avec l'API C.

De plus, faire une recherche avec l'expression "pas" échouera avec une "erreur de base de données Sqllite Logic / Database". Googler semble indiquer qu'une telle requête n'est pas valide. Y a-t-il une syntaxe correcte pour faire l'opération? J'essaie essentiellement de trouver des entrées qui ne contiennent pas ce terme. Ou dois-je redescendre pour utiliser comme et faire une analyse séquentielle et ne pas utiliser FTS?

Était-ce utile?

La solution

On dirait que le moyen le plus simple en ce moment est de créer une table FTS séparée sans lignes et d'exécuter la requête contre elle. Il sera immédiat car il n'y a pas de données dans le tableau et rapportera et errera si la syntaxe de requête est incorrecte.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top