最简单安卓sqlite数据库

小菜鸟,希望大神多交流
建数据库。建表,
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);

    }
}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值