Поддерживает ли Android поддержку JDBC

Я знаю, что на Android есть пакет android.database.sqlite, который предоставляет полезные классы для управления внутренней базой данных Android.

Вопрос в том, могу ли я использовать стандартный пакет java.sql для управления базой данных Android, не используя ничего из android.database.sqlite. * Я пытаюсь открыть соединение с помощью SQLite JDBC-драйвера, но когда я добавил библиотеку в качестве ссылки на проект eclipse Сбой с «java heap out of memory … не смог преобразовать в dalvik VM».

Solutions Collecting From Web of "Поддерживает ли Android поддержку JDBC"

Вы не можете импортировать JAR, реализуя java.* Классы легко. И JDBC нужно будет портировать на Android, так как он, вероятно, полагается на классы в JavaSE, которых нет в Android. И, в любом случае, вам нужно будет написать свой собственный драйвер JDBC для SQLite, а упаковка API Android уже будет поставляться, поскольку я подозреваю, что существующий драйвер JDBC использует JNI. И когда все это будет сделано, у вас будет приложение, которое добавит много раздува, что делает его менее вероятным, и люди будут загружать и сохранять ваше приложение.

Короче говоря, я бы не пошел по этому пути.

Существует ли (недокументированный?) JDBC-драйвер для базы данных SQLite от Android. Попробуйте следующее: (из http://groups.google.com/group/android-developers/browse_thread/thread/cf3dea94d2f6243c )

  try { String db = "jdbc:sqlite:" + getFilesDir() + "/test.db"; Class.forName("SQLite.JDBCDriver"); Connection conn = DriverManager.getConnection(db); Statement stat = conn.createStatement(); stat.executeUpdate("create table primes (number int);"); stat.executeUpdate("insert into primes values (2);"); stat.executeUpdate("insert into primes values (3);"); stat.executeUpdate("insert into primes values (5);"); stat.executeUpdate("insert into primes values (7);"); ResultSet rs = stat.executeQuery("select * from primes"); boolean b = rs.first(); while (b) { Log.d("JDBC", "Prime=" + rs.getInt(1)); b = rs.next(); } conn.close(); } catch (Exception e) { Log.e("JDBC", "Error", e); } 

Драйвер JDBC недокументирован и не поддерживается. Пожалуйста, не используйте этот код.

Избегайте java.sql и вместо этого используйте android.database.sqlite.

Сейчас такой драйвер: SQLDroid .