2013-08-22 97 views
-1

我已经在SQLite数据库中用下面的语句创建了一个表。如何从sqlite数据库中检索数据

static final String DATABASE_CREATE = 
"create table " + "TEST" + 
"(" + "ID" + " integer primary key autoincrement," + 
" UID text, FULLNAME text, GENDER integer, MSTATUS integer, MOBILE text, AGE text);"; 

这个说法,我可以能够插入数据,但我想设计出能够接受手机号码的功能。并返回UID。

回答

2

documentation

String getUidEntry(String mobile) 
{ 
    Cursor c = db.query("TEST", new String[] { "UID" }, 
         "MOBILE = ?", new String[] { mobile }, 
         null, null, null); 
    if (c.moveToFirst()) 
     return c.getString(0); 
    else 
     return ""; // not found 
} 
0

基本的SELECT语句应该工作

“从测试选择UID其中流动=” + MoibileNr

我不是真的使用的SQLite所以有可能是在查询了一些错误,但尝试一下,看看如果它工作

+0

感谢您的答复。它可能会运行,但我想设计一种方法。你能提供整个方法吗? – Rajesh

+0

然后你将不得不提供更多的信息,你使用哪种语言? (也许这是由于“静态最终”关键字的Java),你正在使用哪个api,并且你会在数据库中调用(创建/插入) –

+0

这是一个android应用程序(使用eclipse),API级别17.我想通过以下方式调用该函数.. String uid = TestDataBaseAdapter.getUidEntry(mobile);其中TestDataBaseAdapter是类名称。 – Rajesh

1

你可以使用正确的select语句,我不明白为什么不是Bjorn提供的那个,你可以使用这个函数来更好地控制它。

<?php 
function sqlite_query_multi ($db, $query) { 

    $pattern = '/^(.*;)(.*;)/s'; 
    if (preg_match($pattern,$query,$match)) { 
    // multi-statement query 
     sqlite_exec($db,$match[1]); 
     $result = sqlite_query($db,$match[2]); 
    } else { 
    // single-statement query 
     $result = sqlite_query($db,$query); 
    } 
    return (@$result); 
} 
?> 

你只需要养活数据库参数,并查询它可以是一个select语句提供的数量和要求的UID,然后使用回归,你认为合适。

+0

感谢您的回复,但我想在Android应用程序中设计一种方法,它将采用手机号码。作为参数并将uid返回给调用者。请提供完整的方法.. – Rajesh

+0

@Rajesh您的问题并不表示您正在进行有关Android的调查,虽然我已经足够熟悉为Android创建根和补丁并协助开发,但我的重点主要集中在安全性上,所以我无法在那里协助你。与'sqlite'相关的部分仍然有效,对你来说可能很有用,但我会推迟到一个熟悉Android挂钩到调用系统和人员目录的人来进一步回答你的问题。 –

+0

@GμårÐïññ谢谢。 – Rajesh

相关问题