如何在android sqlite应用程序中访问多列值?
我正在构建一个应用程序,需要访问存储在sqlite数据库中的用户的一些详细信息。问题是我熟悉返回“仅仅”一个值的代码…但是当我尝试访问多个列时…应用程序会出错。 下面是我正在使用的代码。谢谢如何在android sqlite应用程序中访问多列值?,android,Android,我正在构建一个应用程序,需要访问存储在sqlite数据库中的用户的一些详细信息。问题是我熟悉返回“仅仅”一个值的代码…但是当我尝试访问多个列时…应用程序会出错。 下面是我正在使用的代码。谢谢 public String selectAll() { Cursor cursor = db.query(DB_TABLE_NAME2, new String[] { DB_COLUMN_1_NAME,DB_COLUMN_2_NAME,DB_COLUMN_3_NAME,DB_COLUMN_4_NAME
public String selectAll()
{
Cursor cursor = db.query(DB_TABLE_NAME2, new String[] { DB_COLUMN_1_NAME,DB_COLUMN_2_NAME,DB_COLUMN_3_NAME,DB_COLUMN_4_NAME,DB_COLUMN_5_NAME,DB_COLUMN_6_NAME},null, null, null, null,null);
if(cursor.getCount() >0)
{
cursor.moveToNext();
email = cursor.getString(cursor.getColumnIndex(DB_COLUMN_1_NAME));
password=cursor.getString(cursor.getColumnIndex(DB_COLUMN_2_NAME));
phone = cursor.getString(cursor.getColumnIndex(DB_COLUMN_3_NAME));
fname=cursor.getString(cursor.getColumnIndex(DB_COLUMN_4_NAME));
lname = cursor.getString(cursor.getColumnIndex(DB_COLUMN_5_NAME));
location=cursor.getString(cursor.getColumnIndex(DB_COLUMN_6_NAME));
street = cursor.getString(cursor.getColumnIndex(DB_COLUMN_7_NAME));
}
return password;
return email;
return phone;
return fname;
return lname;
return location;
return street;
return email;
}
hiii
您可以使用具有getter和setter方法的包装类,并在特定变量的setter方法中简单地添加值。
通过传递整个包装器类,您可以使用getter方法获得所有变量的值
希望你能理解我说的….实际上你没有在代码中加入循环,这就是为什么它会返回单列多列make循环。例如:
$if (c.moveToFirst())
{
do {
plysidvec[i] = c.getString(0);
plysvec.add(c.getString(1));
i++;
} while (c.moveToNext());
}
嗨,检查你的密码。您的查询只有6列,但您正在尝试访问7列。所以它将给出错误。看看你的代码。。。它有一堆返回语句。但它将在第一次退出时退出。因此,它总是只返回
密码
。请避免使用内部getter/setter方法,而不是使用公共静态成员。看到了吗?是的,我知道你的答案没有错,你是绝对正确的,但就性能而言,我被告知