Урок 34. Хранение данных. SQLite
Re: Урок 34. Хранение данных. SQLite
gerundii
Вы сами в методах onCreate и onUpgrade выкидываете ошибки и еще чему-то удивляетесь.
Вы сами в методах onCreate и onUpgrade выкидываете ошибки и еще чему-то удивляетесь.
Re: Урок 34. Хранение данных. SQLite
вообще пытался разобрать статью http://www.pandacoder.com/loadingsqlite_db_from_assets/
и по ходу не осилил)
подскажите плзз после такого DBHelper как подключаться к уже существующей базе для выборки данных..
и по ходу не осилил)
подскажите плзз после такого DBHelper как подключаться к уже существующей базе для выборки данных..
Re: Урок 34. Хранение данных. SQLite
есть подозрение что метод onCreate в DBHelper должен выглядеть так
тогда получаю ошибку
ругается на строчку объявления переменной c
Но в базе таблица имеется..по крайней мере в SQL менеджере просматривается)
скорее ошибка в подключении к бд..
Код: Выделить всё
public void onCreate(SQLiteDatabase db) {
Initialize();
}
Код: Выделить всё
java.lang.RuntimeException: Unable to resume activity {package.name/a.b.Main}: android.database.sqlite.SQLiteException: no such table: category: , while compiling: SELECT * FROM category
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2124)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2139)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1672)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
Код: Выделить всё
dbHelper = new DBHelper(this);
SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor c = db.query("category", null, null, null, null, null, null);
скорее ошибка в подключении к бд..
Re: Урок 34. Хранение данных. SQLite
http://www.sqlite.org/lang_insert.htmlOlivka писал(а):можно ссылочку на документацию, где это написано?dens писал(а):Когда разбирался с sqlite в андройде наткнулся на то, что он не поддерживает множественные вставки, хотя сам sqlite судя по документации может делать INSERT множеству строк сразу. В чём дело? Типа такая особенность реализации?
Re: Урок 34. Хранение данных. SQLite
gerundii, автор говорит, что методом OnCreate() вообще не пользуется.
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 34. Хранение данных. SQLite
А, понятно.dens писал(а):http://www.sqlite.org/lang_insert.htmlOlivka писал(а):можно ссылочку на документацию, где это написано?dens писал(а):Когда разбирался с sqlite в андройде наткнулся на то, что он не поддерживает множественные вставки, хотя сам sqlite судя по документации может делать INSERT множеству строк сразу. В чём дело? Типа такая особенность реализации?
Нельзя в андроиде использовать. Можно только через Union all, но там будет строка распарсиваться, поэтому дольше, чем обычная вставка.
А по мне и так хорошо вставляется, у меня 90 тыс строк быстро идут, там немного оптимизировать можно. Или не в скорости вопрос?
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 34. Хранение данных. SQLite
Так а как должно происходить подключение к бд?..Olivka писал(а):gerundii, автор говорит, что методом OnCreate() вообще не пользуется.
Re: Урок 34. Хранение данных. SQLite
повторите самостоятельно урок отсюда, а потом разберитесь в статье.. многое поймете..gerundii писал(а):Так а как должно происходить подключение к бд?..Olivka писал(а):gerundii, автор говорит, что методом OnCreate() вообще не пользуется.
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 34. Хранение данных. SQLite
Olivka писал(а):повторите самостоятельно урок отсюда, а потом разберитесь в статье.. многое поймете..gerundii писал(а):Так а как должно происходить подключение к бд?..Olivka писал(а):gerundii, автор говорит, что методом OnCreate() вообще не пользуется.
Так читал уже и уроки и статьи..и пока действительно не очень понимаю в чем может быть проблема..
Если не сложно, подскажите прямо что не так?)буду очень признателен!)
Re: Урок 34. Хранение данных. SQLite
Конечно, лишняя оптимизация нигде не помешает. Просто привык к тому, что, где это возможно, стоит стараться делать всё пакетно - и быстрее, и надёжнее в смысле атомарности операций. Нет, так нет, просто удивило, что сам язык поддерживает insert множественные, а при работе в андройде разработчики подрезали возможности. Может, это и было необходимо, им виднее.Olivka писал(а):А, понятно.dens писал(а):http://www.sqlite.org/lang_insert.htmlOlivka писал(а):можно ссылочку на документацию, где это написано?dens писал(а):Когда разбирался с sqlite в андройде наткнулся на то, что он не поддерживает множественные вставки, хотя сам sqlite судя по документации может делать INSERT множеству строк сразу. В чём дело? Типа такая особенность реализации?
Нельзя в андроиде использовать. Можно только через Union all, но там будет строка распарсиваться, поэтому дольше, чем обычная вставка.
А по мне и так хорошо вставляется, у меня 90 тыс строк быстро идут, там немного оптимизировать можно. Или не в скорости вопрос?
Re: Урок 34. Хранение данных. SQLite
gerundii писал(а):Olivka писал(а):повторите самостоятельно урок отсюда, а потом разберитесь в статье.. многое поймете..gerundii писал(а):Так а как должно происходить подключение к бд?..Olivka писал(а):gerundii, автор говорит, что методом OnCreate() вообще не пользуется.
Так читал уже и уроки и статьи..и пока действительно не очень понимаю в чем может быть проблема..
Если не сложно, подскажите прямо что не так?)буду очень признателен!)
Неужели никто не поможет?!
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Урок 34. Хранение данных. SQLite
Там же черным по белому написано, метод onCreate, в данном случае, никогда не вызывается. Инициализируйте базу как написано в статье, а затем открывайте ее как описано в этом уроке.gerundii писал(а):Неужели никто не поможет?!
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Урок 34. Хранение данных. SQLite
KamiSempai писал(а):Там же черным по белому написано, метод onCreate, в данном случае, никогда не вызывается. Инициализируйте базу как написано в статье, а затем открывайте ее как описано в этом уроке.gerundii писал(а):Неужели никто не поможет?!
Вроде так и делаю
Код: Выделить всё
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
DBHelper.Initialize();
dbHelper = new DBHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
Cursor c = db.query("command", null, null, null, null, null, null);
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: Урок 34. Хранение данных. SQLite
А в методе onCreate класса DBHelper что написано? Он должен быть пустым.gerundii писал(а):Вроде так и делаю
Советую проверить существование таблицы, возможно она по другому называется.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: Урок 34. Хранение данных. SQLite
Кто-нибудь делал разные классы для разных таблиц sqlite?
Как там все согласовывается с одним helper-ом..?
Как там все согласовывается с одним helper-ом..?
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: Урок 34. Хранение данных. SQLite
как сделать так чтобы данные которые хранятся в БД вывести в TextView?
Re: Урок 34. Хранение данных. SQLite
Вынуть из бд и засунуть в TextView
Re: Урок 34. Хранение данных. SQLite
В onCreate напишите :Andir писал(а):как сделать так чтобы данные которые хранятся в БД вывести в TextView?
Код: Выделить всё
TextView output;
output = (TextView) findViewByID(R.id.output);
Код: Выделить всё
out();
Код: Выделить всё
public void out(){
// connect to DB
SQLiteDatabase db = dbHelper.getWritableDatabase();
Cursor c = db.query("mytable", null, null, null, null, null, null);
if (c.moveToFirst()) {
int idColIndex = c.getColumnIndex("id");
int nameColIndex = c.getColumnIndex("name");
int emailColIndex = c.getColumnIndex("email");
output.setText("");
do {
output.setText(output.getText()+"\n"+"ID = "+c.getInt(idColIndex)+", name = "+c.getString(nameColIndex)+", email = "+c.getString(emailColIndex));
} while (c.moveToNext());
} else
{
output.setText("");
}
c.close();
dbHelper.close();
};
Re: Урок 34. Хранение данных. SQLite
Как созданную БД (из урока) открыть в другой Activity ?
нашел решение:
нашел решение:
Код: Выделить всё
private static String DB_PATH = "/data/data/com.example.p0341_simplesqlite/databases/";
private static String DB_NAME = "myDB";
String myPath = DB_PATH + DB_NAME;
db = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);
Последний раз редактировалось nunuchek 29 мар 2013, 14:29, всего редактировалось 1 раз.
Re: Урок 34. Хранение данных. SQLite
граждане, хватит уже - только что это обсуждали в данной теме.nunuchek писал(а):Как созданную БД (из урока) открыть в другой Activity ?
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198