Код приложения:
Код:
package ru.dev;
import ru.dev.R;
import android.app.Activity;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btnADD,btnREAD,btnCLEAR,btnUPD,btnDEL;
btnADD = (Button) findViewById(R.id.button1);
btnREAD = (Button) findViewById(R.id.button2);
btnCLEAR = (Button) findViewById(R.id.button3);
btnUPD = (Button) findViewById(R.id.button4);
btnDEL = (Button) findViewById(R.id.button5);
final EditText phoneRead;
final EditText nameRead;
final EditText phoneWrite;
final EditText nameWrite;
final EditText idUpdDel;
nameRead = (EditText) findViewById(R.id.editText1);
phoneRead = (EditText) findViewById(R.id.editText2);
nameWrite = (EditText) findViewById(R.id.editText3);
phoneWrite = (EditText) findViewById(R.id.editText4);
idUpdDel = (EditText) findViewById(R.id.editText5);
final DBHelper DBOpenHelper;
DBOpenHelper = new DBHelper(this); // создаем объект для создания и управления версиями БД
btnADD.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
//обработчик кнопки добавления
}
});
btnREAD.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
nameWrite.setText("");
phoneWrite.setText("");
SQLiteDatabase db = DBOpenHelper.getWritableDatabase();
Cursor c = db.query("spis", null, null, null, null, null, null);
if (c.moveToFirst()) {
int nameColIndex = c.getColumnIndex("name");
int phoneColIndex = c.getColumnIndex("phone");
do {
nameWrite.setText(nameWrite.getText().toString()+c.getString(nameColIndex)+", ");
phoneWrite.setText(phoneWrite.getText().toString()+c.getString(phoneColIndex)+", ");
} while (c.moveToNext());
} else
c.close();
db.close();
}
});
btnCLEAR.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
nameWrite.setText("");
phoneWrite.setText("");
SQLiteDatabase db = DBOpenHelper.getWritableDatabase();
db.delete("spis", null, null);
db.close();
}
});
btnUPD.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
String id = idUpdDel.getText().toString();
SQLiteDatabase db = DBOpenHelper.getWritableDatabase();
ContentValues cv = new ContentValues();
if (!id.equalsIgnoreCase("")) {
cv.put("name", "1");
cv.put("phone", "2");
db.update("spis", cv, "id = ?",
new String[] { id });
}
db.close();
}
});
btnDEL.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
String id = idUpdDel.getText().toString();
SQLiteDatabase db = DBOpenHelper.getWritableDatabase();
db.delete("spis", "id = " + id, null);
db.close();
}
});
}
class DBHelper extends SQLiteOpenHelper {
public DBHelper(Context context) {
// конструктор суперкласса
super(context, "pupil", null, 1);
}
public void onCreate(SQLiteDatabase db) {
// создаем таблицу с полями
db.execSQL("create table spis ("
+ "id integer primary key autoincrement,"
+ "name text,"
+ "phone text" + ");");
}
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
При нажатии на кнопку "обновить" вываливается из приложения с ошибкой. Вот лог: