Выборка из БД
Добавлено: 02 авг 2013, 22:34
Хочу сделать выборку из дб по заданному атрибуту. вылезает нулпоинт на строке.
селекшн активити
мейн
и адаптер
селекшн активити
Код: Выделить всё
public class SelectionsActivity extends Activity {
final String LOG_TAG = "myLogs";
RegistrationAdapter adapter_ob;
RegistrationOpenHelper helper_ob;
SQLiteDatabase db_ob;
EditText etPeople;
Button btn66;
ListView lv1;
Cursor cursor = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.selection);
etPeople = (EditText) findViewById(R.id.etPeople);
lv1 = (ListView) findViewById (R.id.lv1);
String[] from = { helper_ob.FNAME, helper_ob.LNAME, helper_ob.DATE, helper_ob.CATEGORY };
int[] to = { R.id.tv_fname, R.id.tv_lname, R.id.tv_date, R.id.tv33 };
cursor = adapter_ob.SelectTest(); // здесь ошибка
SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter(this,
R.layout.row, cursor, from, to);
lv1.setAdapter(cursorAdapter);
}
}
Код: Выделить всё
public class MainActivity extends Activity {
RegistrationAdapter adapter_ob;
RegistrationOpenHelper helper_ob;
SQLiteDatabase db_ob;
ListView nameList;
Button registerBtn, testBtn, btnSel;
Cursor cursor;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nameList = (ListView) findViewById(R.id.lv_name);
registerBtn = (Button) findViewById(R.id.btn_register);
testBtn = (Button) findViewById(R.id.testBtn);
adapter_ob = new RegistrationAdapter(this);
btnSel = (Button) findViewById(R.id.btnSel);
// String track = helper_ob.TEST;
// final Calendar c = Calendar.getInstance();
// int today = c.get(Calendar.MONTH);
//if(track==today){
// Toast.makeText(getApplicationContext(), "Добавлено",
// 500).show();
// }
//else {}
String[] from = {helper_ob.FNAME, helper_ob.LNAME, helper_ob.DATE, helper_ob.CATEGORY};
int[] to = {R.id.tv_fname, R.id.tv_lname, R.id.tv_date, R.id.tv33};
cursor = adapter_ob.queryName();
SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter(this,
R.layout.row, cursor, from, to);
nameList.setAdapter(cursorAdapter);
nameList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
Bundle passdata = new Bundle();
Cursor listCursor = (Cursor) arg0.getItemAtPosition(arg2);
int nameId = listCursor.getInt(listCursor
.getColumnIndex(helper_ob.KEY_ID));
// Toast.makeText(getApplicationContext(),
// Integer.toString(nameId), 500).show();
passdata.putInt("keyid", nameId);
Intent passIntent = new Intent(MainActivity.this,
EditActivity.class);
passIntent.putExtras(passdata);
startActivity(passIntent);
}
});
registerBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent registerIntent = new Intent(MainActivity.this,
RegistrationActivity.class);
startActivity(registerIntent);
}
});
testBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg1) {
// TODO Auto-generated method stub
Intent testIntent = new Intent(MainActivity.this,
testActivity.class);
startActivity(testIntent);
}
});
btnSel.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg2) {
// TODO Auto-generated method stub
Intent testIntent = new Intent(MainActivity.this,
SelectionsActivity.class);
startActivity(testIntent);
}
});
}
@Override
public void onResume() {
super.onResume();
cursor.requery();
}
}Код: Выделить всё
public class RegistrationAdapter {
SQLiteDatabase database_ob;
RegistrationOpenHelper openHelper_ob;
Context context;
String sPeople = "10";
String[] cols = null;
String selection = null;
String[] selectionArgs = null;
String groupBy = null;
String having = null;
String orderBy = null;
final String LOG_TAG ="myLogs";
public RegistrationAdapter(Context c) {
context = c;
}
public RegistrationAdapter opnToRead() {
openHelper_ob = new RegistrationOpenHelper(context,
openHelper_ob.DATABASE_NAME, null, openHelper_ob.VERSION);
database_ob = openHelper_ob.getReadableDatabase();
return this;
}
public RegistrationAdapter opnToWrite() {
openHelper_ob = new RegistrationOpenHelper(context,
openHelper_ob.DATABASE_NAME, null, openHelper_ob.VERSION);
database_ob = openHelper_ob.getWritableDatabase();
return this;
}
public Cursor SelectTest(){
String[] cols = { openHelper_ob.KEY_ID, openHelper_ob.FNAME,
openHelper_ob.LNAME, openHelper_ob.DATE, openHelper_ob.CATEGORY, openHelper_ob.TEST };
Log.d(LOG_TAG, "--- Население больше " + sPeople + " ---");
selection = "testValue > ?";
String[] selectionArgs = {"2"};
Cursor c = database_ob.query(openHelper_ob.TABLE_NAME, cols, selection, selectionArgs, null, null,
null);
return c;
}
public void Close() {
database_ob.close();
}
public long insertDetails(String fname, String lname, String date, String category, int test) {
ContentValues contentValues = new ContentValues();
contentValues.put(openHelper_ob.FNAME, fname);
contentValues.put(openHelper_ob.LNAME, lname);
contentValues.put(openHelper_ob.DATE, date);
contentValues.put(openHelper_ob.CATEGORY, category);
contentValues.put(openHelper_ob.TEST, test);
opnToWrite();
long val = database_ob.insert(openHelper_ob.TABLE_NAME, null,
contentValues);
Close();
return val;
}
public Cursor queryName() {
String[] cols = { openHelper_ob.KEY_ID, openHelper_ob.FNAME,
openHelper_ob.LNAME, openHelper_ob.DATE, openHelper_ob.CATEGORY, openHelper_ob.TEST };
opnToWrite();
Cursor c = database_ob.query(openHelper_ob.TABLE_NAME, cols, null,
null, null, null, null);
return c;
}
public Cursor Selection() {
String test = openHelper_ob.TEST;
selection = "testValue > ?";
String[] selectionArgs = {"2"};
Cursor c = database_ob.query(openHelper_ob.TABLE_NAME, null, selection, selectionArgs, null, null,
null);
return c;
}
public Cursor queryAll(int nameId) {
String[] cols = { openHelper_ob.KEY_ID, openHelper_ob.FNAME,
openHelper_ob.LNAME, openHelper_ob.DATE, openHelper_ob.CATEGORY, openHelper_ob.TEST };
opnToWrite();
Cursor c = database_ob.query(openHelper_ob.TABLE_NAME, cols,
openHelper_ob.KEY_ID + "=" + nameId, null, null, null, null);
return c;
}
public long updateldetail(int rowId, String fname, String lname, String date, String category, int test ) {
ContentValues contentValues = new ContentValues();
contentValues.put(openHelper_ob.FNAME, fname);
contentValues.put(openHelper_ob.LNAME, lname);
contentValues.put(openHelper_ob.DATE, date);
contentValues.put(openHelper_ob.CATEGORY, category);
contentValues.put(openHelper_ob.TEST, test);
opnToWrite();
long val = database_ob.update(openHelper_ob.TABLE_NAME, contentValues,
openHelper_ob.KEY_ID + "=" + rowId, null);
Close();
return val;
}
public int deletOneRecord(int rowId) {
// TODO Auto-generated method stub
opnToWrite();
int val = database_ob.delete(openHelper_ob.TABLE_NAME,
openHelper_ob.KEY_ID + "=" + rowId, null);
Close();
return val;
}
}