SQLite数据库对数据的基本操作(一)
来源:互联网 发布:java多线程 无等待 编辑:程序博客网 时间:2024/05/21 06:54
1.新建MySQLiteOpenHelper 类,继承SQLiteOpenHelper
/** * 创建类,继承SQLiteOpenHelper抽象类,重写方法 * */public class MySqliteDataBase extends SQLiteOpenHelper { /** * Context context, * String name,数据库的名字,通常写成XXX.db * CursorFactory factory, 游标工厂,可以理解成是一个结果的集合,通常只能传null,系统会使用默认的游标工厂 * int version:要创建的或者要打开的数据库的版本,注意,版本只能++,此操作是不可逆的 * */ public MySqliteDataBase(Context context,int version) { super(context, "goods.db", null, version); } /** * 数据库被创建时,回调此方法,在此方法中做创建表的操作 * * */ public void onCreate(SQLiteDatabase db) { db.execSQL("create table good(id integer primary key autoincrement ,name varchar(20), price varchar(20))"); Log.i("myTag", "数据库被创建时,onCreate方法被调用"); } /** * 当数据库的版本发生变化时,会自动回调此方法 版本变化包括(升级表的结构,更新表的字段) * */ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { }}
1.增
public class AddGoodsActivity extends BaseActivity implements OnClickListener { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_add_goods); initView(); MySQLiteOpenHelper mySQLiteOpenHelper = new MySQLiteOpenHelper( AddGoodsActivity.this, 1);//参数1指的是数据库的版本号 // 获取一个数据库的操作对象,对数据库进行操作(增删改查) db = mySQLiteOpenHelper.getReadableDatabase(); } public void onClick(View v) { switch (v.getId()) { case R.id.add_act_button1: ContentValues values = new ContentValues(); String name = getViewContent(nameEdit); String price = getViewContent(priceEdit); String date = getViewContent(dateEdit); //key要和表中的字段名称一样 values.put("name", name); values.put("price", price); values.put("date", date); /** * 参数一:表名 * 参数二:通常设置为空 * 参数三:需要插入的数据的集合 * */ db.insert("goods1", null, values); myToast("添加商品信息成功"); break; } }}
2.删
public class DeleteGoodsActivity extends BaseActivity implements OnClickListener { private SQLiteDatabase db; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_delete_goods); MySQLiteOpenHelper mySQLiteOpenHelper = new MySQLiteOpenHelper( DeleteGoodsActivity.this, 1); db = mySQLiteOpenHelper.getReadableDatabase(); } public void onClick(View v) { id = getViewContent(idEditText); if (v.getId() == R.id.delete_act_btn) { //根据id将数据删除 /** * 参数一:表名 * 参数二:删除的条件,通常写成 :"xx=?" * 参数三:删除的id * */ db.delete("goods1", "id=?", new String[] { id }); myToast("商品删除成功"); } } } }}
3.改
public class Update extends BaseActivity implements OnClickListener { private SQLiteDatabase db; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_update); MySQLiteOpenHelper mySQLiteOpenHelper = new MySQLiteOpenHelper( Update.this, 1); db = mySQLiteOpenHelper.getReadableDatabase(); } public void onClick(View v) { if (v.getId() == R.id.update_act_button1) { String updeId = getViewContent(idEditText); String updateName = getViewContent(nameEditText); String updatePrice = getViewContent(priceEditText); String updateDate = getViewContent(dateEditText); ContentValues values = new ContentValues(); //key值要和数据库中的字段名相对应 values.put("id", updeId); values.put("name", updateName); values.put("price", updatePrice); values.put("date", updateDate); /** * 参数一:表名 * 参数二:需要更新的数据的集合 * 参数三:sql语句的条件字符串 * 参数四:补全参数三中的占位符 * */ db.update("goods1", values, "id=?", new String[] { findId }); myToast("商品信息修改成功"); } }}
4.查
public class UpdateGoodsActivity extends BaseActivity implements OnClickListener { private SQLiteDatabase db; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_update_goods); MySQLiteOpenHelper mySQLiteOpenHelper = new MySQLiteOpenHelper( UpdateGoodsActivity.this, 1); db = mySQLiteOpenHelper.getReadableDatabase(); } public void onClick(View v) { updateId = getViewContent(idEditText); if (v.getId() == R.id.update_act_btn) { //根据商品的id将数据查询出来 /** * 参数一:表名 * 参数二:查询的列数组(为null时,默认查找所有的列) * 参数三:查询条件(为null,则没有限制),预编译 * 参数四:填充参数三中预编译的占位符 * 参数五: * 参数六: * 参数七: * */ Cursor cursor = db.query("goods1", null, "id=?", new String[] { updateId }, null, null, null); //根据id将该条数据的值依次取出 while (cursor.moveToNext()) { String id = cursor.getString(cursor.getColumnIndex("id")); String name = cursor.getString(1); String price = cursor.getString(2); String date = cursor.getString(3); } } } }}
阅读全文
0 0
- SQLite数据库对数据的基本操作(一)
- SQLite数据库对数据的基本操作(二)
- SQLite数据库的基本操作
- SQLite数据库的基本操作
- sqlite数据库的基本操作
- SQLite的基本数据操作
- android对SQLite数据库进行操作(一)SQL语句
- SQLite数据库---数据库的基本操作
- 数据存储之 SQLite 数据库操作(一)
- sqlite数据库的基本操作基于FMDatabase(创建数据库,创建表,对标进行增,删,改,查)
- jdbc 对sqlite的基本操作
- sqlite数据库基本操作
- SQLite数据库基本操作
- sqlite数据库基本操作
- SQLite数据库基本操作
- 数据库sqlite基本操作
- SQLite数据库基本操作
- sqlite 数据库基本操作
- 明小子注入工具+啊D注入工具+御剑后台扫描工具+中国菜刀一句话木马
- jdbc测试 -- 登录的实现(自己小笔记)
- 位运算
- js中的事件委托或是事件代理详解
- macOS zip 打包加密和 unzip 解压
- SQLite数据库对数据的基本操作(一)
- java反射
- Fragment生命周期的奇怪设定
- Android设计模式之(2)----Builder模式
- 当程序员老去...一位资深程序员的自白....
- FreeRTOS学习笔记(一)基础篇
- Android 7.0 应用间文件访问方法(FileProvider)
- 理解和使用html5shiv
- DOM解析HTML