android基础--最基本的SQLite实例
来源:互联网 发布:拦截导弹算法 编辑:程序博客网 时间:2024/06/09 17:08
下面是一个最简单的SQLite使用实例, 界面有5个按钮, 分别对应了SQLite的基本操作. 整个程序分成两个文件, MainActivity.java实现主程序逻辑,DatabaseHelper.java中定义的DatabaseHelper类继承了SQLiteOpenHelper类.
以下是DatabaseHelper.java:
package com.sqlitedb;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;public class DatabaseHelper extends SQLiteOpenHelper{private static final int Dversion = 1;public DatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory,int version){super(context, name, factory, version);}public DatabaseHelper(Context context, String name, int version){this(context, name, null, version);//调用自身的构造函数}public DatabaseHelper(Context context, String name){this(context, name, Dversion); //调用自身的构造函数}@Override //当首次创建数据库时被调用 public void onCreate(SQLiteDatabase db){System.out.println("Create database");db.execSQL("create table user(id int, name varchar(10))");}@Override //当升级数据库时被调用 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){System.out.println("Upgrade database");}}
以下是MainActivity.java:
import com.sqlitedb.DatabaseHelper;import android.app.Activity;import android.content.ContentValues;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button; public class MainActivity extends Activity { private Button button_create,button_upgrade,button_insert; private Button button_delete,button_update,button_query; private final String db_name = "my_database"; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_1); initial(); //初始化界面按钮 } private void initial(){ button_create = (Button)findViewById(R.id.create); button_create.setOnClickListener(new listener_create()); button_upgrade = (Button)findViewById(R.id.upgrade); button_upgrade.setOnClickListener(new listener_upgrade()); button_insert = (Button)findViewById(R.id.insert); button_insert.setOnClickListener(new listener_insert()); button_delete = (Button)findViewById(R.id.delete); button_delete.setOnClickListener(new listener_delete()); button_update = (Button)findViewById(R.id.update); button_update.setOnClickListener(new listener_update()); button_query = (Button)findViewById(R.id.query); button_query.setOnClickListener(new listener_query()); } class listener_create implements OnClickListener { @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity.this, db_name); SQLiteDatabase db = dbHelper.getWritableDatabase(); } } class listener_upgrade implements OnClickListener { @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity.this, db_name, 2); SQLiteDatabase db = dbHelper.getWritableDatabase(); } } class listener_insert implements OnClickListener { @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity.this, db_name); SQLiteDatabase db = dbHelper.getWritableDatabase(); ContentValues values = new ContentValues(); //设置欲插入的列名和值 values.put("id", 1); values.put("name", "Jet"); //当values参数为空或者里面没有内容的时候, //我们insert是会失败的(底层数据库不允许插入一个空行), //为了防止这种情况,我们要在这里指定一个列名, //如果发现将要插入的行为空行时, //就会将你指定的这个列名的值设为null,然后再向数据库中插入。 db.insert("user", null, values); } } class listener_delete implements OnClickListener { @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity.this, db_name); SQLiteDatabase db = dbHelper.getWritableDatabase(); //"?"为通配符, 对应String[]中的各个值 db.delete("user", "id=?", new String[]{"1"}); } } class listener_update implements OnClickListener { @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity.this, db_name); SQLiteDatabase db = dbHelper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("name", "Tom"); //"?"为通配符, 对应String[]中的各个值 db.update("user", values, "id=?", new String[]{"1"}); } } class listener_query implements OnClickListener { @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(MainActivity.this, db_name); SQLiteDatabase db = dbHelper.getWritableDatabase(); Cursor cursor; cursor = db.query("user", new String[]{"id","name"}, null, null, null, null, null); //游标一开始会指向第一个元素前的位置, 即-1, 所以要移动到下一个位置, 即第一个元素 cursor.moveToNext(); String name = cursor.getString(cursor.getColumnIndex("name")); System.out.println(name); } }}
- android基础--最基本的SQLite实例
- Android sqlite 基础实例
- 【基础】SQLite的基本使用方法
- Android的SQLite基本操作
- Android Sqlite的基本用法
- Android SQLite的基本操作
- Android 的 Sqlite基本操作
- Android 的 Sqlite基本操作
- android的SQLite基本用法
- Android SQLite的使用实例
- Android的SQLite使用实例
- Android SQLite的使用实例
- [android开发实例] sqlite+content provider+cursor adapter的最简单实现示例
- 最基础的ajax实例
- Android 对话框Dialog的使用,最基本,最基础的使用
- 【Android基础篇】SQLite数据库的增删改查基本操作
- Jrtplib的最基本的操作实例
- 委托 一个最基本的委托实例
- java 多线程编程总结
- VMware Ubuntu NAT上网方式配置
- linux单独安装oracle客户端(instantclient)
- C++时间格式转换函数(字符串转整型)
- Android开发笔记——TCP/IP
- android基础--最基本的SQLite实例
- 旋转矩阵
- 中秋前一天做了碎石,中秋养病.
- linux centos yum安装mysql
- MyEclipse+Tomcat+JSP开发环境配置
- ScrollView嵌入ViewPager 滑动冲突的解决方法
- DevExpress更新至13.1.7
- socket 编程入门教程(一)TCP server 端:3、sockaddr与sockaddr_in
- Java笔记01——IO流