1、安卓增删改查总结Activity:package com.example.bbb;import android.app.Activity;import android.content.ContentValues;import android.database.Cursor;import android.database.sqlite.SQLiteCursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.util.Log;import android.view.View
2、;import android.widget.AdapterView;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.ListView;import android.widget.SimpleCursorAdapter;import android.widget.Toast;public class MainActivity extends Activity public static final String TAG
3、 = SQLiteDemo; private SQLiteDatabase db; private Button insertButton; private Button queryButton; private Button deleteButton; private Button updateButton; private ListView listView; private EditText nameEditText; private EditText passwordEditText; private TextView tv1; private TextView tv2; privat
4、e SimpleCursorAdapter adapter; private int currentId; Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); DBHelper dbHelper = new DBHelper(this); / 在执行了getWritableDatabase的时候才会创建数据库 db = dbHelper.getWritableDatabase(
5、); insertButton = (Button) findViewById(R.id.insertButton); insertButton.setOnClickListener(new View.OnClickListener() Override public void onClick(View arg0) insertUserInfo(); ); queryButton = (Button) findViewById(R.id.queryButton); queryButton.setOnClickListener(new View.OnClickListener() Overrid
6、e public void onClick(View v) queryAllUserInfos(); ); deleteButton = (Button) findViewById(R.id.deleteButton); deleteButton.setOnClickListener(new View.OnClickListener() Override public void onClick(View v) deleteUserInfo(); ); updateButton = (Button) findViewById(R.id.updateButton); updateButton.se
7、tOnClickListener(new View.OnClickListener() Override public void onClick(View v) updateUserInfo(); ); listView = (ListView) findViewById(R.id.listView); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() Override public void onItemClick(AdapterView adapter, View view, int position
8、, long itemId) Cursor cursor = (Cursor) adapter.getItemAtPosition(position); int id = cursor.getInt(cursor.getColumnIndex(_id); String name = cursor.getString(cursor .getColumnIndex(username); String password = cursor.getString(cursor .getColumnIndex(password); currentId = id; /nameEditText.setText(
9、name); /passwordEditText.setText(password); tv1=(TextView) view.findViewById(R.id.textView1); tv2=(TextView) view.findViewById(R.id.textView2); tv1.setText(name); tv2.setText(password); ); nameEditText = (EditText) findViewById(R.id.nameEditText); passwordEditText = (EditText) findViewById(R.id.pass
10、wordEditText); public void deleteUserInfo() db.delete(m_userinfo, _id=?, new String String.valueOf(currentId) ); Toast.makeText(this, Delete id + currentId, Toast.LENGTH_SHORT) .show(); public void updateUserInfo() String name = nameEditText.getText().toString(); String password = passwordEditText.g
11、etText().toString(); ContentValues contentValues = new ContentValues(); contentValues.put(username, name); contentValues.put(password, password); db.update(m_userinfo, contentValues, _id=?, new String String.valueOf(currentId) ); Toast.makeText(this, Update id + currentId, Toast.LENGTH_SHORT) .show(
12、); public void insertUserInfo() String name = nameEditText.getText().toString(); String password = passwordEditText.getText().toString(); ContentValues contentValues = new ContentValues(); contentValues.put(username, name); contentValues.put(password, password); / 设置数据库的null数值 / contentValues.putNul
13、l(username); / 如果我们不添加nullColumnHack的话,那么我们的sql语句最终的结果将会类似insert into / tableName()values(); / 这显然是不允许的。而如果我们添加上nullColumnHack呢, / sql将会变成这样,insert into tableName / (nullColumnHack)values(null);这样很显然就是可以的。 long rowId = db.insert(m_userinfo, null, contentValues); Toast.makeText(this, insert rowId + r
14、owId, Toast.LENGTH_SHORT) .show(); nameEditText.setText(null); passwordEditText.setText(null); currentId = -1; public void queryAllUserInfos() / columns如果是null,则返回所有的列 Cursor cursor = db.query(m_userinfo, null, null, null, null, null, null); / 按username排序 / Cursor cursor = db.query(m_userinfo, null,
15、 null, null, null, null, / username); / 加搜索条件 / Cursor cursor = db.query(m_userinfo, null, username like ?, new / String%p%, null, null, username); Log.d(TAG, Cursor + cursor); / adapter = new SimpleCursorAdapter(this, / android.R.layout.simple_list_item_2, cursor, new String / username, password ,
16、new int / android.R.id.text1, android.R.id.text2 ); adapter = new SimpleCursorAdapter(this, R.layout.sss, cursor, new String username, password , new int R.id.textView1, R.id.textView2 ); listView.setAdapter(adapter); / while (cursor.moveToNext() / / int id = cursor.getInt(0); / / String username =
17、cursor.getString(1); / String username = cursor.getString(cursor / .getColumnIndex(username); / String password = cursor.getString(cursor / .getColumnIndex(password); / / Log.d(TAG, id + id + , username + username + , password + password); / Override protected void onDestroy() db.close(); super.onDe
18、stroy(); Sqlhelp:package com.example.bbb;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteCursor;import android.database.sqlite.SQLiteCursorDriver;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteQuery;import android
19、.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.SQLiteOpenHelper;import android.util.Log;public class DBHelper extends SQLiteOpenHelper public static final String TAG = SQLiteDemo; public static final String DB_NAME = mydb.db; public static final int VERSION = 1; public
20、DBHelper(Context context) /super(context, DB_NAME, null, VERSION); super(context, DB_NAME, null, VERSION); Override public void onCreate(SQLiteDatabase db) Log.d(TAG, Database on create); String sql = CREATE TABLE m_userinfo(_id INTEGER PRIMARY KEY AUTOINCREMENT, username VARCHAR(256), password VARCHAR(256); db.execSQL(sql); Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) Log.d(TAG, Database on upgrade old version + oldVersion + , new version + newVersion); Xml:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1