最简单安卓sqlite数据库

来源:互联网 发布:卫星拍摄软件 编辑:程序博客网 时间:2024/05/17 07:57
小菜鸟,希望大神多交流建数据库。建表,public class DBInfo {    //数据库名字-------------------------------------------------------------------------------------------------    public static final String DB_NAME = "test619";    //数据库版本号-----------------------------------------------------------------------------------------------    public static int DB_VERSION = 1;    //数据库中的表名----------------------------------------------------------------------------------------------    public static final String TABLE_NAME = "data619";    //表中列的名称------------------------------------------------------------------------------------------------    public static final String 名称 = "名称";    public static final String 编号 = "编号";    public static final String 类型 = "类型";    public static final String 锁定 = "锁定";    public static final String 有效性 = "有效性";    public static final String 关系 = "关系";    public static final String 数据类型 = "数据类型";    public static final String 默认值 = "默认值";    public static final String 说明 = "说明";    public static final String 主键 = "主键";    public static final String 允许空 = "允许空";    public static final String 自增标识 = "自增标识";    public static final String 变更时间 = "变更时间";    public static final String 序号 = "序号";    public static final String 标识 = "标识";    public static final String 节点 = "节点";    public static final String 父节点 = "父节点";    public static final String 路径 = "路径";}其次建数据库基本方法
public class Sqlite extends SQLiteOpenHelper {    //创建的方法    //Context context 上下文    //String name数据库名字    //SQLiteDatabase.CursorFactory factory  游标工厂 null则使用磨人的游标    //int version  数据库版本    public Sqlite(Context context) {        super(context, DBInfo.DB_NAME, null, DBInfo.DB_VERSION);    }    //重写构造方法    //创建数据库    @Override    public void onCreate(SQLiteDatabase db) {        //创建表        String sql = "create table %1$s(%2$s text,%3$s text,%4$s text,%5$s text,%6$s text," +                "%7$s text,%8$s text,%9$s text,%10$s text,%11$s text,%12$s text," +                "%13$s text,%14$s text,%15$s text,%16$s text,%17$s text,%18$s text,%19$s text)";        String fomart = String.format(sql, DBInfo.TABLE_NAME, DBInfo.名称,                DBInfo.编号, DBInfo.类型, DBInfo.锁定, DBInfo.有效性,                DBInfo.关系, DBInfo.数据类型, DBInfo.默认值, DBInfo.说明,                DBInfo.主键, DBInfo.允许空, DBInfo.自增标识, DBInfo.变更时间,                DBInfo.序号, DBInfo.标识, DBInfo.节点, DBInfo.父节点, DBInfo.路径);        //执行SQL语句,创建一张表             db.execSQL(fomart);    }    //版本更新    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {        String sql = "drop table if exists diary";        db.execSQL(sql);        this.onCreate(db);    }}
对数据库进行操作
public class SqlLiteUtil {    Context mContext;    Sqlite sqlLite;    public SqlLiteUtil(Context mContext) {        this.mContext = mContext;        sqlLite = new Sqlite(mContext);    }    //插入数据    public void insert(String 名称, String 编号, String 类型, String 锁定, String 有效性, String 关系,                       String 数据类型, String 默认值, String 说明, String 主键, String 允许空, String 自增标识,                       String 变更时间, String 序号, String 标识, String 节点, String 父节点, String 路径) {        SQLiteDatabase database = sqlLite.getWritableDatabase();        ContentValues values = new ContentValues();        values.put(DBInfo.名称, 名称);        values.put(DBInfo.编号, 编号);        values.put(DBInfo.类型, 类型);        values.put(DBInfo.锁定, 锁定);        values.put(DBInfo.有效性, 有效性);        values.put(DBInfo.关系, 关系);        values.put(DBInfo.数据类型, 数据类型);        values.put(DBInfo.默认值, 默认值);        values.put(DBInfo.说明, 说明);        values.put(DBInfo.主键, 主键);        values.put(DBInfo.允许空, 允许空);        values.put(DBInfo.自增标识, 自增标识);        values.put(DBInfo.变更时间, 变更时间);        values.put(DBInfo.序号, 序号);        values.put(DBInfo.标识, 标识);        values.put(DBInfo.节点, 节点);        values.put(DBInfo.父节点, 父节点);        values.put(DBInfo.路径, 路径);        database.insert(DBInfo.TABLE_NAME, null, values);    }    /*名称,编号 ,类型 ,锁定 ,有效性 ,关系 ,数据类型 ,默认值 ,说明 ,主键         ,允许空 ,自增标识 ,变更时间  ,序号  ,标识  ,节点 ,父节点  ,路径  */    public ArrayList<UserInfo> query() {        SQLiteDatabase sqLiteDatabase = sqlLite.getReadableDatabase();        ArrayList<UserInfo> list = new ArrayList<>();        Cursor cursor = sqLiteDatabase.query(DBInfo.TABLE_NAME, null, null, null, null, null, null);        while (cursor.moveToNext()) {            String 名称 = cursor.getString(cursor.getColumnIndex("名称"));            String 编号 = cursor.getString(cursor.getColumnIndex("编号"));            String 类型 = cursor.getString(cursor.getColumnIndex("类型"));            String 锁定 = cursor.getString(cursor.getColumnIndex("锁定"));            String 有效性 = cursor.getString(cursor.getColumnIndex("有效性"));            String 关系 = cursor.getString(cursor.getColumnIndex("关系"));            String 数据类型 = cursor.getString(cursor.getColumnIndex("数据类型"));            String 默认值 = cursor.getString(cursor.getColumnIndex("默认值"));            String 说明 = cursor.getString(cursor.getColumnIndex("说明"));            String 主键 = cursor.getString(cursor.getColumnIndex("主键"));            String 允许空 = cursor.getString(cursor.getColumnIndex("允许空"));            String 自增标识 = cursor.getString(cursor.getColumnIndex("自增标识"));            String 变更时间 = cursor.getString(cursor.getColumnIndex("变更时间"));            String 序号 = cursor.getString(cursor.getColumnIndex("序号"));            String 标识 = cursor.getString(cursor.getColumnIndex("标识"));            String 节点 = cursor.getString(cursor.getColumnIndex("节点"));            String 父节点 = cursor.getString(cursor.getColumnIndex("父节点"));            String 路径 = cursor.getString(cursor.getColumnIndex("路径"));            list.add(new UserInfo(名称, 编号, 类型, 锁定, 有效性, 关系, 数据类型, 默认值, 说明, 主键                    , 允许空, 自增标识, 变更时间, 序号, 标识, 节点, 父节点, 路径));        }        return list;    }    //删除    public void deletehang(String namestation) {        SQLiteDatabase db = sqlLite.getWritableDatabase();        db.delete(DBInfo.TABLE_NAME, "namestation" + "=?", new String[]{namestation + ""});    }    public void delete() {        SQLiteDatabase db = sqlLite.getWritableDatabase();        db.delete(DBInfo.TABLE_NAME, null, null);    }}

原创粉丝点击