选择查询来检查android中SQLite数据库中的现有记录

发布于 2024-10-07 23:42:03 字数 494 浏览 3 评论 0原文

我想知道查询来检查数据库中的特定记录是否已存在于我的应用程序中。

我为这些做了一项功能,但它不能正常工作。

public boolean ifExisting(String name) {
    Cursor c = db.rawQuery("SELECT * FROM " + TABLE_NAME + "WHERE" + "name" + "=" + name, null);
    if(c.getCount() == 0)
     return false; 
else
     return true;
}

这是我需要执行检查复制过程功能的地方。

if(dh.ifExisting(dataVector.get(position)) == true) {

} else {
dh.insert(dataVector.get(position));
} 

有人可以帮助我吗?

谢谢, 大卫

I want to know the Query to check whether the particular Record in the DataBase already exists or not for my application.

I have made one function for these, but it is not working properly.

public boolean ifExisting(String name) {
    Cursor c = db.rawQuery("SELECT * FROM " + TABLE_NAME + "WHERE" + "name" + "=" + name, null);
    if(c.getCount() == 0)
     return false; 
else
     return true;
}

This is the place where I need to perform the function of checking for the Duplication Process.

if(dh.ifExisting(dataVector.get(position)) == true) {

} else {
dh.insert(dataVector.get(position));
} 

Can anybody please help me.

Thanks,
david

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

始终不够 2024-10-14 23:42:03

你能说得更具体一点吗? “无法正常工作”并不是真正的问题描述。

无论如何,您的查询缺少一些空格:

"SELECT * FROM " + TABLE_NAME + "WHERE" + "name" + "=" + name
// if you would print the string you would get this:
"SELECT * FROM TABLE_NAMEWHEREname=name"

Can you be a bit more specific? "no working properly" isn't a real problem description.

Anyway, your query is missing some spaces:

"SELECT * FROM " + TABLE_NAME + "WHERE" + "name" + "=" + name
// if you would print the string you would get this:
"SELECT * FROM TABLE_NAMEWHEREname=name"
王权女流氓 2024-10-14 23:42:03

第一个问题:您的 data.Vector.get(position) 返回一个字符串作为结果?
第二:如果您的原始查询不起作用,请尝试:

" where " + name + " like '"
                    + name + "'", null);

也许这可能对您有帮助

First question: your data.Vector.get(position) returns a string as result?
Second: if your rawquery doesn't works, then try:

" where " + name + " like '"
                    + name + "'", null);

Maybe this might help you

时光礼记 2024-10-14 23:42:03
Cursor c = db.rawQuery("SELECT * FROM " + TABLE_NAME + "WHERE" + "name" + "=" + name, null); 


>TABLE_NAME + "WHERE" + "name"

将是“TablenameWHEREname”而不是“Tablename WHERE name”。

Cursor c = db.rawQuery("SELECT * FROM " + TABLE_NAME + "WHERE" + "name" + "=" + name, null); 


>TABLE_NAME + "WHERE" + "name"

will be "TablenameWHEREname" instead of "Tablename WHERE name".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文