gpt4 book ai didi

Android - 像 MySQL 一样的 SQLite 查询

转载 作者:行者123 更新时间:2023-11-29 08:31:08 24 4
gpt4 key购买 nike

我有以下方法从 android SQLite 数据库获取数据

我在android中的功能

public List<String> getMyDetails()
{
List<String> dataList = new ArrayList<String>();
Cursor cursor = myDataBase.rawQuery("SELECT * FROM pic_details WHERE _id=1",null);

if (cursor .moveToFirst()) {

do {
String name = cursor.getString(cursor.getColumnIndex("name"));
dataList.add(name);
} while (cursor.moveToNext());
}

return dataList;

}

在 Activity 中这样调用

List<String> piclist= dbHelper. getMyDetails();

它返回候选人的姓名。但我想在 PHP、MySQL 中返回表的整个列

$sql=mysql_query("SELECT * FROM pic_details WHERE _id=1");
$i=0;
$out=array();

while($t=mysql_fetch_array($sql)){

$out[$i]['name']=$t['name'];
$out[$i]['file']=$t['file'];
$out[$i]['age']=$t['age'];
$out[$i]['date_time']=$t['date_time'];

$i++;
}

return $out;

这样我就可以根据需要取出$out。

有人可以帮我吗?提前致谢

最佳答案

正如您在问题中的 php 代码 中提供的那样,它不是单个。这是一个行数据。因此,您基本上想要的是整个行信息。为了获取整个行的详细信息,您必须执行类似的操作。

 String name = cursor.getString(cursor.getColumnIndex("name"));
String address = cursor.getString(cursor.getColumnIndex("address"));

因此,通用将是:

datatype fetchedData = cursor.getterofthatparticulardatatype(cursor.getColumnIndex(columnName));

编辑:

要么使用POJO类,正如其他回答者所说,或者这样:

public List<HashMap<String, String>> getMyDetails()
{

List<HashMap<String, String>> datalist = new ArrayList<HashMap<String, String>>();

Cursor cursor = myDataBase.rawQuery("SELECT * FROM pic_details WHERE _id=1",null);

if (cursor.moveToFirst()) {

do {
HashMap<String, String> hashmap = new HashMap<String, String>();

String name = cursor.getString(cursor.getColumnIndex("name"));
String story = cursor.getString(cursor.getColumnIndex("story"));

hashmap.put("nameKey",name);
hashmap.put("storyKey",story);

dataList.add(hashmap);
} while (cursor.moveToNext());
}

return dataList;

}

检索方式:

List<HashMap<String, String>> piclist= dbHelper. getMyDetails();

for(HashMap hashmap : piclist)
{
String name = hashmap.get("nameKey");
String story = hashmap.get("storyKey");
Log.d("name,story",name+", "+story);
}

关于Android - 像 MySQL 一样的 SQLite 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16582426/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com