标签: sqlite

android sqlite从数据库中随机获取数据

我的数据库包含问题,每个问题都有三个选项。一切正常,但是当我尝试随机获取问题和选项时,它给了我错误:

我发现了与我的问题类似的问题,但它也没有起作用,

这是我的代码:

public List<Test> getTest() {
List<Test> MyList = new ArrayList<Test>();

myDB=this.getReadableDatabase();
Cursor cursor = myDB.rawQuery("SELECT  * FROM " + My_Table + "ORDER BY RANDOM() LIMIT 1", null);

if (cursor.moveToFirst()) {
do {
Test newQ = new Test();
newQ .setId(cursor.getInt(0));
newQ .setTest(cursor.getString(1));
newQ .setAns(cursor.getString(2));
newQ .setO1(cursor.getString(3));
newQ .setO2(cursor.getString(4));
newQ .setO3(cursor.getString(5));
MyList .add(newQ );
} while (cursor.moveToNext());
}
return MyList ;}
Run Code Online (Sandbox Code Playgroud)

当我将此行添加到我的代码中时:

ORDER BY RANDOM()LIMIT 1

该活动将无法进行。

sqlite random android

-3
推荐指数
1
解决办法
821
查看次数

与null比较,不在java中工作

我一直试图null在条件下进行比较,但它不起作用,总是在Else中.以下是代码,

String authEmail = cursor.getString(cursor.getColumnIndexOrThrow("AUTHOR_EMAIL"));
Log.i(gtag, "author email => " + authEmail);
    if (authEmail == null ) {
        Log.i(gtag, "in author check - IF NULL");
     } else {
            Log.i(gtag, "in author check - ELSE ");                 
     }
Run Code Online (Sandbox Code Playgroud)

cursor是查询SQLite数据库的结果,AUTHOR_EMAIL是列的名称.Logcat将作者电子邮件显示为null,但仍然在ELSE中.以下是Logcat:

06-24 15:30:55.307: I/GCA-Abs-Con(1282): author email => foo@bar.de
06-24 15:30:55.307: I/GCA-Abs-Con(1282): in author check - ELSE 
06-24 15:30:55.357: I/GCA-Abs-Con(1282): author email => null
06-24 15:30:55.357: I/GCA-Abs-Con(1282): in author check - ELSE 
Run Code Online (Sandbox Code Playgroud)

的logcat的显示第3行authorEmailnull但仍进去else. …

java sqlite android

-3
推荐指数
1
解决办法
2500
查看次数

Android sql区分大小写不兼容rawQuery?

rawQuery字符串搜索给我所有结果,不区分大小写.

我的代码是

    String gg="mt";   
    String cnql = "SELECT DISTINCT sinhala FROM jgd WHERE sinhala LIKE '"+gg+"%'   LIMIT 0,40";  
    Cursor   cg=cn.rawQuery(cnql, null);
Run Code Online (Sandbox Code Playgroud)

它输出

"mT考试""mt考试"

sqlite android

-3
推荐指数
1
解决办法
266
查看次数

我可以在内存中保存sqlite数据库吗?

我可以在内存中保存sqlite数据库吗?我想将我的数据库保存到手机内存中.

eclipse memory sqlite android

-3
推荐指数
1
解决办法
853
查看次数

当进入另一个活动Android应用程序崩溃

我正在尝试TextViews使用SQLiteDataBase 填充第二个事件.当用户点击该项目时,ListView他/她可以在第二个上查看事件的详细信息,Activity但每当我点击某个事件时它就会崩溃.

MainActivity.java

  myList.setAdapter(myCursorAdapter);

    myList.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Cursor myCursor = (Cursor) myList.getItemAtPosition(position);
            String pickedString = myCursor.getString(1);

            Intent intent = new Intent(getApplicationContext(),EventDetails.class);
            intent.putExtra("name_var", pickedString);
            startActivity(intent);
        }
    }
Run Code Online (Sandbox Code Playgroud)

DBHelper:

public ArrayList<String> getEvent(String name)
{
    ArrayList<String> array_list = new ArrayList<String>();
    //hp = new HashMap();
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor res =  db.rawQuery( "select * from events WHERE name='" +name+"'", null );
    res.moveToFirst();

    array_list.add(res.getString(res.getColumnIndex(EVENTS_COLUMN_NAME))); …
Run Code Online (Sandbox Code Playgroud)

java sqlite android

-3
推荐指数
1
解决办法
85
查看次数

Perl:如何在不使用max(rowid)的情况下查找sql​​ite数据库中的总行数?

我想找出SQLITE数据库表中的行数,我知道我可以查询使用SELECT COUNT(*) FROM TABLENAME; 但我想使用perl代码获取计数并将其存储到变量中?我可以使用以下代码

my $stmt = qq(SELECT COUNT(*) AS $NUMBEROFROWS FROM TABLENAME)
$rv = $dbh->do($stmt);
Run Code Online (Sandbox Code Playgroud)

要么

my $stmt = qq(SELECT COUNT(*) FROM TABLENAME
              $NUMBEROFROWS = COUNT(*)      );
$rv = $dbh->do($stmt);
Run Code Online (Sandbox Code Playgroud)

请建议我如何计算SQLITE数据库表中的行数并将值存储到变量中?

TIA

sqlite perl

-3
推荐指数
1
解决办法
119
查看次数

我的应用程序在创建Sqlite DB时崩溃

我正在尝试在我的Android应用程序中使用数据库,但是当我启动将使用数据库帮助程序/合同的活动时,它会崩溃.我已经尝试了一些查询验证器,我似乎没有发现任何错误.以下我用来使用我的dbhelper,但第二行导致崩溃.

    DBhelper dbHelper = new DBhelper(this);
    mDatabase = dbHelper.getWritableDatabase();
Run Code Online (Sandbox Code Playgroud)

我的dbcontract的代码是:

public final class DBcontract {

    private DBcontract(){}

    public static class DB_table1 implements BaseColumns {
        public static final String TABLE_Name = "Timer_table";
        public static final String COL_1 = "id";
        public static final String COL_2 = "Title";
        public static final String COL_3 = "Startvalue";
        public static final String COL_4 = "Endvalue";
        public static final String COL_5 = "Timer";

    }
}
Run Code Online (Sandbox Code Playgroud)

而dbhelper是:

public class DBhelper extends SQLiteOpenHelper {

    public static final int DATABASE_VERSION …
Run Code Online (Sandbox Code Playgroud)

sqlite android android-sqlite

-3
推荐指数
1
解决办法
165
查看次数

SQLite Android Count Query不起作用

我正在开发我的capstone项目,该项目正在开发Android移动应用程序.该应用程序显示调查问题,用户让其他人回答它.答案存储在SQLite数据库表中.我成功地创建了数据库,从单选按钮获取输入,并持久地将答案存储到表中.表中的每一列代表一个问题的答案.

现在,我需要执行一个COUNT查询来计算每列中具有特定条件的答案数.

例:

SELECT COUNT(KEY_GENDER)
FROM TABLE_ANSWERS
WHERE KEY_GENDER = "Female";
Run Code Online (Sandbox Code Playgroud)

在上面的查询中,KEY_GENDER是性别列,存储的数据是女性还是男性. TABLE_ANSWERS是表名.

此查询的功能是显示许多女性已经回答了调查.

以下是计数查询代码段,它位于数据库类中:

   // count of gender.
    public int countGender(){

        String colName = "COUNT(" + KEY_GENDER +")" ;
        SQLiteDatabase db = this.getReadableDatabase();
        Cursor cursor = db.rawQuery("SELECT" + colName + "FROM" + TABLE_ANSWERS + "WHERE" + KEY_GENDER + "=?" + new String[] {"Female"}, null) ;


        while (cursor.moveToNext()) {
            int  colID = cursor.getColumnIndex(KEY_GENDER);
            int colID2 = cursor.getColumnIndex(colName);

        }
        db.close();
        cursor.close();

        // return count
        return cursor.getCount(); …
Run Code Online (Sandbox Code Playgroud)

database sqlite android

-4
推荐指数
1
解决办法
688
查看次数

Ruby on Rails数据库查询

我使用scaffold为名为'pins'的东西生成一个db表,模型和控制器,在表中有一个名为description的字符串列.具体电话是:

rails g scaffold pins description:string
Run Code Online (Sandbox Code Playgroud)

在它生成的pins_controller文件中,它具有以下代码片段:

def index
    @pins = Pin.all
end
Run Code Online (Sandbox Code Playgroud)

Pin.all呼叫是否查询数据库中的所有引脚?是.allSQL调用还是Ruby on Rails方法?代码在我的测试网站上运行我只是想了解幕后发生了什么.

ruby sqlite postgresql ruby-on-rails

-4
推荐指数
1
解决办法
673
查看次数

如何在 executeQuery 上修复此 NullPointerException?

我在我的简单 sql 语句的 executeQuery 上有一个 NullPointerException;我认为问题来自与 sqlite 的连接,但我无法弄清楚...

我的java方法:

    public Connection connect() throws SQLException {
    Connection conn = null;
    try {
        try {
            Class.forName("org.sqlite.JDBC");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        String url = "jdbc:sqlite:sakila.db.sqlite3";
        conn = DriverManager.getConnection(url);
        System.out.println("Connection to SQLite has been established.");
    } catch (SQLException e) {  
        System.out.println(e.getMessage());  
    }

    Statement stmt = conn.createStatement();        
    String sql = "SELECT * FROM FILM LIMIT 10";
    stmt.executeQuery(sql);
    return conn;
}
Run Code Online (Sandbox Code Playgroud)

这是控制台的结果

Connection to SQLite has been established.
Exception in thread "main" java.lang.NullPointerException …
Run Code Online (Sandbox Code Playgroud)

java sqlite jdbc

-4
推荐指数
1
解决办法
465
查看次数