【发布时间】:2018-04-18 17:10:02
【问题描述】:
我正在做一个项目,我需要设置一个数据库供用户在 android 上使用我的应用程序,为此我创建了两个活动:一个将创建用户(注册活动),另一个活动将允许登录部分... 我的问题是,当我将从我的 EditText 视图收集的字符串值与我的数据库中内容数据类型为 (Text) 的列 (user_name) 进行比较时,我遇到了一个错误,它完全忽略了我的选择之后发生的内容...哪里... = 这是代码,希望有人知道这个问题。
name = (EditText) findViewById(R.id.user_name);
final String verify = name.getText().toString().trim();
Cursor cs = db1.rawQuery("select * from user where name_user="+verify,null);
在这些指令之后,我使用了一个“If”语句,只要用户的名称已经存在或不存在,我就会显示一个 toast,我尝试用 try catch 包围我的代码,但这只是忽略了错误,在我的表中,我们插入一个空的用户名... 这是错误:
android.database.sqlite.SQLiteException: near "=": syntax error (code1):while compiling: select * from user where name_user=
我知道我的问题是(验证)变量,但我不知道如何将字符串值设为文本值,以便接受我的 sqlite 命令 提前感谢您的回答。
【问题讨论】:
-
特别注意Suragch的answer
-
所有这些帖子与我的问题有什么关系?我没有看到任何关系,也没有任何解决我的问题的方法......对不起。
-
您的应用因查询错误而崩溃。链接的帖子解释了如何编写查询(例如,使用 LIKE 但也使用“=”)。因此,在理解了另一篇文章之后,您将能够在必要时借助调试器来解决您的问题。如果不是这种情况,请编辑您的问题以解释您尝试了什么、结果如何等。然后我们可以尝试重新提出问题。
标签: android database sqlite types