【发布时间】:2016-09-09 14:16:49
【问题描述】:
我的应用程序中有一个数据库,我想根据当前日期从数据库中检索数据。我使用过此查询,但是当我单击检索按钮时,listView 中没有显示任何内容
Select * from BluetoothDevice where Date = current_date
public class UserDbHelper extends SQLiteOpenHelper {
public static final String DATABASENAME = "DATABASENAME2";
public static final int DB_VERSION = 1;
public UserDbHelper(Context context)
{
super(context,DATABASENAME,null,DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
sqLiteDatabase.execSQL("CREATE TABLE IF NOT EXISTS BluetoothDevice ( Device VARCHAR , Address VARCHAR , Date VARCHAR);");
}
public List<BluetoothDevice> getItemFromDatabase(SQLiteDatabase sqLiteDatabase) {
List<BluetoothDevice> result = new ArrayList<>();
// query database elements
Cursor c = sqLiteDatabase.rawQuery("Select * from BluetoothDevice where Date = current_date;", null);
while (c.moveToNext()) {
Date date = new Date();
date.setTime(Long.valueOf(c.getString(c.getColumnIndex("Date"))));
result.add(
new BluetoothDevice(
c.getString(c.getColumnIndex("Device")),
c.getString(c.getColumnIndex("Address")),
date
)
);
}
c.close();
return result;
}
public void store(List<BluetoothDevice> data,SQLiteDatabase sqLiteDatabase) {
for (BluetoothDevice value : data) {
String s = String.valueOf(new Date().getTime());
//insert in database
sqLiteDatabase.execSQL("INSERT INTO BluetoothDevice VALUES(?,?,?,?);", new String[]{value.name, value.address, s});
}
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
}
【问题讨论】:
-
它适用于 sql server 不适用于 android 的 sqlite 数据库
-
stackoverflow.com/questions/10395459/…看这段代码,查询中的语法是一样的。
-
我试过也没有显示
标签: android sqlite android-sqlite