Как импортировать файл sqlite в мой проект? - PullRequest
0 голосов
/ 23 июня 2010

Я делаю sqlight, используя Eclipse вне проекта Android

что мне добавить в мой манифест андроида, чтобы он работал?

спасибо, Матиас, давайте перенесем этот вопрос в другой проект, который создает файл SQL с использованием Java предполагая это. Как установить флаг SQLiteDatabase.NO_LOCALIZED_COLLATORS при вызове SQLiteDatabase.openDatabase()?

мой код там

Class.forName("org.sqlite.JDBC");            
Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db");
/*
*some code 
*/
   Statement stat = conn.createStatement();
    stat.executeUpdate("drop table if exists "+TABLE_NAME+";");
    //stat.executeUpdate("create table "+TABLE_NAME+" (name, occupation);");
    stat.executeUpdate("create table "+TABLE_NAME+" ("+VALUE+","+TYPE+","+LETTER+");");
    PreparedStatement prep = conn.prepareStatement(
      "insert into "+TABLE_NAME+" values (?, ?,?);");

Даже когда я использую:

  db = SQLiteDatabase.openDatabase(myPath, null,  SQLiteDatabase.NO_LOCALIZED_COLLATORS);

когда я использую запрос:

     String s = "Israel";
Cursor cursor = db.query(TABLE_NAME, new String[] {VALUE}
        ,VALUE + " like " + "'%" + s +"%'", null, null, null, null);

Я получаю исключение.

1 Ответ

0 голосов
/ 23 июня 2010

Вам не нужно добавлять ничего особенного в манифест андроида. Вы можете открыть базу данных из любого места, т. Е. Также с вашей SD-карты или где-либо еще. В противном случае обычным местом для размещения базы данных является папка ресурсов вашего приложения.

Когда вы создаете БД вне проекта Android, просто убедитесь, что вы либо создаете таблицу метаданных (как упоминалось в документации для Android), либо устанавливаете флаг SQLiteDatabase.NO_LOCALIZED_COLLATORS при вызове SQLiteDatabase.openDatabase(). Также следует отметить, что первичный ключ во всех таблицах - _id. Это самые важные вещи, которые следует учитывать при создании новой БД.

Также полезно в отношении таблицы метаданных:

Что такое таблица android_metadata?

Нет такой таблицы android_metadata, в чем проблема?

Полезный блог: http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...