如何删除Sq Lite中的行? [Android应用开发]

时间:2015-08-09 08:46:34

标签: android sqlite

在表格中插入学生详细信息,其中包括姓名,身份证,电子邮件和电话,并在ListView中显示。
当我点击列表视图项目时,它会转到下一页,其中显示相应的学生详细信息。在那个页面中我想插入一个按钮,当点击该按钮时,该学生的整个细节就意味着相应的行将被删除。怎么可能。

Java类

Button deletest;
    del=(TextView)findViewById(R.id.del);
    deletest.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            DBUserAdapter dbUser = new DBUserAdapter(getApplicationContext());
            dbUser.open();
            String data=del.getText().toString();
            dbUser.delete(data);
            return;


        }
    });

数据库助手类

public Cursor delete(String data) throws SQLException {
        // TODO Auto-generated method stub
        // db = DBHelper.getWritableDatabase();
        Cursor mCursor = db.rawQuery(
                "DELETE * FROM addresstable where studentid=" + data, null);

        return mCursor;
    }

1 个答案:

答案 0 :(得分:1)

问题是rawQuery()

Cursor mCursor = db.rawQuery(
            "DELETE * FROM addresstable where studentid=" + data, null);

rawQuery()适用于... 查询(表示SELECT)。
对于SQL 命令(如INSERTDELETEUPDATE,...),请使用execSQL()

Cursor mCursor = db.execSQL(
            "DELETE * FROM addresstable where studentid=" + data);