#android #sqlite #utf-8 #cyrillic
#Android #sqlite #utf-8 #кириллица
Вопрос:
У меня есть база данных sqlite в моем приложении для Android, где все таблицы являются виртуальными, потому что мне нужен быстрый поиск по некоторым целым таблицам. Я также использую расширенный класс and SQLiteOpenHelper для открытия моей базы данных.
Вот пример создания таблицы, которую я использую:
CREATE VIRTUAL TABLE person USING fts3(firstName VARCHAR(50), lastName VARCHAR(50))
Все работает нормально, пока каждый текст, который я вставляю, написан латинскими символами. К сожалению, всякий раз, когда я пытаюсь вставить некоторые кириллические символы, я получаю исключение SQLiteException рядом с кириллическим символом, который, по его словам, является синтаксической ошибкой.
Пример:
INSERT INTO person (firstName, lastName) VALUES ('John','Россия')
android.database.sqlite.SQLiteException: near "Россия":
syntax-error: INSERT INTO person (firstName, lastName) VALUES ('John','Россия')
Насколько я знаю, SQLite использует utf-8 в качестве стандарта.
Я уже пытался сделать это без использования fts3 (без виртуальной таблицы), но результат тот же.
Может ли кто-нибудь помочь мне выяснить, чего мне не хватает, чтобы вставить кириллический текст в мою базу данных?