Я разрабатываю приложение, которое требует хранения португальских символов. Мне было интересно, нужна ли мне какая-либо конфигурация для подготовки моего SQLite db для хранения тех, которые считаются специальными символами. Когда я запрашиваю таблицу db, содержащую эти символы, я получаю «?» (без кавычек) вместо них.SQLite и португальский-br символов
ответ
Возможно, проблема с кодировкой. Ваш DB/клиент использует UTF-8? , вы должны проверить свою кодировку БД PRAGMA encoding;
, убедитесь, что ваш клиент выполняет эту работу, используя ту же кодировку, и убедитесь, что используемая кодировка хорошо управляет этими португальскими символами.
Я использую sqlite3 на своем mac в качестве клиента, поэтому он должен обрабатывать их просто отлично ... Как бы я удостоверился, что он правильно обрабатывает португальских символов? Я просто проверил кодировку БД и вернул UTF-8. – ForeignerBR
UTF-8 подходит для португальского языка. Либо у вас БД есть '?' (т. е. плохое добавление базы данных на первом месте), ваша консоль или клиент не могут обрабатывать UTF-8. Я бы попробовал другого клиента, например, язык сценариев (python), чтобы увидеть, что действительно находится в БД, или попытаться создать новую БД и поместить некоторые из этих символов в таблицу, а затем повторить свой процесс с этой новой БД, чтобы узнать, получаете ли вы '?'. – 2009-10-30 06:45:21
Какой язык вы используете? – 2009-10-30 06:32:59
Я использую Objective-C – ForeignerBR