SQLite Java Android такой таблицы нет, программа выходит из строяAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 SQLite Java Android такой таблицы нет, программа выходит из строя

Сообщение Anonymous »

Я пытаюсь создать базу данных для своей программы, и у меня возникает много глупых проблем...
Это фрагмент основного действия:

Код: Выделить всё

Database db = new Database(this,editText.getText().toString());
String text = db.printRow();
textView.setText(text);
Теперь класс базы данных:

Код: Выделить всё

String nickname="EmptyNick";
public Database(Context context, String name) {
super(context, "database.db", null, 1);
nickname = name;
}

public void onCreate(SQLiteDatabase db) {
if(!nickname.equals("EmptyNick")) {
db.execSQL("create table player(id integer primary key autoincrement,nick text);");
Users user = new Users();
user.setNick("Mariusz");
addPlayer(user);
}
else {
//not important
}
}

private void addPlayer(Users user) {
SQLiteDatabase db = getWritableDatabase();
ContentValues values = new ContentValues();
values.put("nick",user.getNick());
db.insertOrThrow("player",null,values);
}

public String printRow() {
String string=null;
if(!nickname.equals("EmptyNick")) {
String[] columns = {"id","nick"};
SQLiteDatabase db = getReadableDatabase();
Cursor cursor = db.query("player",columns,null,null,null,null,null);
cursor.moveToFirst();
while (cursor.moveToNext()) {
string += cursor.getString(1);
}
}
else {
//not important
}
return string;
}
Ошибки:

нет такой таблицы: player

Вызвано: java.lang .reflect.IndictionTargetException

Вызвано: android.database.sqlite.SQLiteException: нет такой таблицы: player (код 1): , при компиляции: SELECT id, ник FROM player

Я действительно не понимаю, в чем дело. Ошибка говорит, что таблицы «игрок» нет, но это так. В начале метода onCreate в строке:

Код: Выделить всё

db.execSQL("create table player(id integer primary key autoincrement,nick text);");
Может ли кто-нибудь мне помочь? Если я создам Toast вместо text.setText(...), он покажет мне пустое поле, так что да, он не сможет создать определенную строку. Я понимаю ошибку, но не знаю, откуда и почему она возникает.

Подробнее здесь: https://stackoverflow.com/questions/274 ... am-crashes
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»