gpt4 book ai didi

java - 如何在从第一个 Activity 收到的 sqlite 查询中传递整数变量?

转载 作者:行者123 更新时间:2023-12-02 05:58:32 25 4
gpt4 key购买 nike

我是 Android 设备编程新手。我有两个 Activity ,在第一个 Activity 中,我将一个整数值从第一个 Activity 发送到第二个 Activity 。

如何在我从第一个 Activity 收到的 sqlite 查询中添加此变量?

我想在查询中写入 b=1 的位置添加书号,我想用书号替换 1

private void setData() {

Intent mIntent = getIntent();
int booknumber= mIntent.getIntExtra("booknumber", 0);

stringArrayList = new ArrayList<>();

mDBHelper = new DatabaseHelper(this);
mDb = mDBHelper.getReadableDatabase();

Cursor cursor = mDb.rawQuery("select DISTINCT c from t_asv where b=1", new String[]{});

if(cursor!=null && cursor.getCount() > 0)
{
if (cursor.moveToFirst())
{
do {
stringArrayList.add(cursor.getString(0));
} while (cursor.moveToNext());
}
}

最佳答案

只需将 int 书号连接到您的查询,如下所示:

int booknumber= mIntent.getIntExtra("booknumber", 0);
...
Cursor cursor = mDb.rawQuery("select DISTINCT c from t_asv where b=" + booknumber, new String[]{});

更新:最好使用 PreparedStatement/how to use正如@patrick-hollweck提到的

Writing code like this leaves your app wide open to a sql injection vulnerability and is generally considered a very bad practice

关于java - 如何在从第一个 Activity 收到的 sqlite 查询中传递整数变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55992396/

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