Android笔记(四十三) Android中的数据存储——SQLite(五)delete
SQLite通过delete()方法删除数据
delete()方法参数说明:
delete()方法参数 | 对应sql部分 | 描述 |
table | delte from table_name | 要删除的表 |
whereClause | where column | 删除条件 |
whereArgs | where column=? | 删除条件的参数 |
看代码:
MainActivity.java
package cn.lixyz.sqlite; import android.app.Activity; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private EditText name, age, paramter, originalAge, newAge, deleteAge; private Button insertButton, selectButton, paramterSelect, updateButton, deleteButton; private SQLiteDatabase database; private MySQLiteOpenHelper msop; public String inputSex; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findView(); msop = new MySQLiteOpenHelper(this, "user.db", null, 1); database = msop.getReadableDatabase(); } private void findView() { name = (EditText) findViewById(R.id.name); age = (EditText) findViewById(R.id.age); insertButton = (Button) findViewById(R.id.insertButton); selectButton = (Button) findViewById(R.id.selectButton); paramter = (EditText) findViewById(R.id.paramter); paramterSelect = (Button) findViewById(R.id.paramterSelect); originalAge = (EditText) findViewById(R.id.originalAge); newAge = (EditText) findViewById(R.id.newAge); updateButton = (Button) findViewById(R.id.updateButton); deleteAge = (EditText) findViewById(R.id.deleteAge); deleteButton = (Button) findViewById(R.id.deleteButton); } public void clickButton(View view) { switch (view.getId()) { case R.id.selectButton: selectData(); break; case R.id.insertButton: insertData(); break; case R.id.paramterSelect: paramterSelect(); break; case R.id.updateButton: updateData(); break; case R.id.deleteButton: deleteData(); } } private void deleteData() { String str = deleteAge.getText().toString(); String whereClause = "age = ?"; String[] whereArgs = new String[] { str }; int i = database.delete("user", whereClause, whereArgs); if (i > 0) { Toast.makeText(MainActivity.this, "删除成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "删除不成功", Toast.LENGTH_SHORT).show(); } } private void updateData() { String oldAge = originalAge.getText().toString(); String updateAge = newAge.getText().toString(); ContentValues cv = new ContentValues(); cv.put("age", updateAge); String whereColumn = "age=?";// 修改条件 String[] whereArgs = { oldAge }; int i = database.update("user", cv, whereColumn, whereArgs); if (1 > 0) { Toast.makeText(MainActivity.this, "更新成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "更新不成功", Toast.LENGTH_SHORT).show(); } } private void paramterSelect() { String inputAge = paramter.getText().toString(); Cursor c = database.rawQuery("select * from user where age>?", new String[] { inputAge }); if (c.moveToFirst()) { do { int id = c.getInt(c.getColumnIndex("id")); String name = c.getString(c.getColumnIndex("name")); String age = c.getString(c.getColumnIndex("age")); Log.d("TTTT", "id=" + id + ",name=" + name + ",age=" + age); } while (c.moveToNext()); } c.close(); } private void insertData() { String inputAge = age.getText().toString(); String inputName = name.getText().toString(); ContentValues cv = new ContentValues(); cv.put("name", inputName); cv.put("age", inputAge); database.insert("user", null, cv); Toast.makeText(MainActivity.this, "插入成功", Toast.LENGTH_SHORT).show(); age.setText(""); name.setText(""); } private void selectData() { Cursor c = database.query("user", null, null, null, null, null, null); if (c.moveToFirst()) { do { int id = c.getInt(c.getColumnIndex("id")); String name = c.getString(c.getColumnIndex("name")); String age = c.getString(c.getColumnIndex("age")); Log.d("TTTT", "id=" + id + ",姓名=" + name + ",年龄=" + age); } while (c.moveToNext()); } c.close(); } class MySQLiteOpenHelper extends SQLiteOpenHelper { private static final String CREATE_USER = "create table user(id integer primary key autoincrement,name text,age text)"; private Context mContext; public MySQLiteOpenHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version); mContext = context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_USER); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub } } }
activity_main.xml
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > <EditText android:id="@+id/name" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="输入姓名" /> <EditText android:id="@+id/age" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="输入年龄" /> <Button android:id="@+id/insertButton" android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="clickButton" android:text="点击插入" /> <Button android:id="@+id/selectButton" android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="clickButton" android:text="点击查询" /> <TextView android:id="@+id/text" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="条件搜索" /> <EditText android:id="@+id/paramter" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="您要搜多少岁以上的?" /> <Button android:id="@+id/paramterSelect" android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="clickButton" android:text="点击搜索" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="update" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <EditText android:id="@+id/originalAge" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="要修改的年龄" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="修改为" /> <EditText android:id="@+id/newAge" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="新年龄" /> </LinearLayout> <Button android:id="@+id/updateButton" android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="clickButton" android:text="UPDATE" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="删除数据" /> <EditText android:id="@+id/deleteAge" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="您要删除的年龄" /> <Button android:id="@+id/deleteButton" android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="clickButton" android:text="点击删除" /> </LinearLayout> </ScrollView>
运行结果: