Я работаю над проектом студии android, в котором мне нужно получить данные определенного имени, по которому я щелкнул из моего списка, данные хранятся в формате sql в виде таблицы, например, если я нажму на имя «maira», оно должно получить данныеmaira из таблицы базы данных.
вот мой код класса предмета здесь сообщение - это название предмета, щелкнувшего в просмотре списка в основной деятельности
`public class Itemshow extends AppCompatActivity {
SQLiteOpenHelper sqLiteOpenHelper;
TextView nameCustomer;
TextView phoneCustomer;
TextView medicinesCustomer;
String message;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_itemshow);
Bundle bundle=getIntent().getExtras();
if(bundle!=null)
message=bundle.getString("item");
nameCustomer=(TextView)findViewById(R.id.nameTextView);
nameCustomer.setText(message);
DatabaseHelper db;
db=new DatabaseHelper(this);
Cursor answer = db.getDataForGivenName(message);
while (answer.moveToNext()){
// some examples, you can continue from here
String temp = answer.getString(0); //0 is the index of the column ID
String temp2 = answer.getString(1); //1 is the index of the column CUSTOMER_NAME
// You can possible ad them in Arraylist if you need this data somewhere else
}
}
}
`
и мой вспомогательный класс базы данных
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME="Chemist.db";
public static final String TABLE_NAME="chemist_table";
public static final String COL_1="ID";
public static final String COL_2 ="CUSTOMER_NAME";
public static final String COL_3="CUSTOMER_PHONE";
public static final String COL_4="MEDICINES";
public DatabaseHelper( Context context) {
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table "+ TABLE_NAME + " (CUSTOMER_NAME TEXT PRIMARY KEY,CUSTOMER_PHONE TEXT,MEDICINES TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS "+TABLE_NAME);
onCreate(db);
}
public boolean insertData(String customerName,String phone,String medicines )
{
SQLiteDatabase db=this.getWritableDatabase();
ContentValues contentValues=new ContentValues();
contentValues.put(COL_2,customerName);
contentValues.put(COL_3,phone);
contentValues.put(COL_4,medicines);
long result=db.insert(TABLE_NAME,null,contentValues);
if (result==-1)
return false;
else
return true;
}
public Cursor getAllData(){
SQLiteDatabase db=this.getWritableDatabase();
Cursor res=db.rawQuery("select * from "+TABLE_NAME,null);
return res;
}
public Cursor getDataForGivenName(String name){
SQLiteDatabase sqLiteDatabase = this.getWritableDatabase();
Cursor result = sqLiteDatabase.rawQuery("SELECT * FROM " + TABLE_NAME + " WHERE NAME = '" + name + "'", null);
return result;
}
}
Я не могу это сделать, пожалуйста, помогите мне.я просто хотел показать данные элемента из всех столбцов, выбранных в списке