博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android sqlite 增删改[insert、up…
阅读量:6841 次
发布时间:2019-06-26

本文共 2467 字,大约阅读时间需要 8 分钟。

package com.db.imgfornote;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DBHelper extends SQLiteOpenHelper {
    final private static String mDbName="imgfornote";
    final private static int mDbVersion=1;
    private static DBHelper mInstance=null;
    private final static String mTUserPhoto="UserPhoto";
    final private static String mCreateSqlForNoteClass="create table if not exists NoteClass(classId integer primary key asc autoincrement,className NVARCHAR(100),rowTime timestamp default (datetime('now', 'localtime')))";
    final private static String mCreateSqlForUserPhoto="create table if not exists UserPhoto(photoId integer primary key asc autoincrement,photoName VARCHAR(200),userPt VARCHAR(200),title VARCHAR(255),classId integer,content NVARCHAR(250),tag NVARCHAR(200),remark text,status integer default 0,rowTime timestamp default (datetime('now', 'localtime')))";
    final private static String[] mInsertSqlForNoteClass={"insert into NoteClass(className) values('默认分类[私有]');","insert into NoteClass(className) values('读书笔记[私有]');","insert into NoteClass(className) values('电子资料[公开]');"};
    private DBHelper(Context context, CursorFactory factory) {
        super(context, mDbName, factory, mDbVersion);    
    }
    
    public static DBHelper GetInstance(Context context, SQLiteDatabase.CursorFactory factory)
    {
        if(mInstance==null){
            mInstance = new DBHelper(context,factory);    
        }
        return mInstance;
    }
    @Override
    public void onCreate(SQLiteDatabase db) {
        // 创建表
        db.execSQL(mCreateSqlForNoteClass);    
        db.execSQL(mCreateSqlForUserPhoto);
        //初始化数据
        for(int i=0;i<mInsertSqlForNoteClass.length;i++)
            db.execSQL(mInsertSqlForNoteClass[i]);
    }
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // TODO Auto-generated method stub
    }
    
    private Cursor ExecSQLForCursor(String sql, String[] selectionArgs){
        SQLiteDatabase db =getWritableDatabase();
        Log.i("ExecSQLForCursor",sql);
        return db.rawQuery(sql, selectionArgs);
    }
    private void ExecSQL(String sql){
        try{
            SQLiteDatabase db =getWritableDatabase();
            ExecSQL(sql,db);
        }catch(Exception e){
            Log.e("ExecSQL Exception",e.getMessage());
                    e.printStackTrace();
        }
    }
    private void ExecSQL(String sql,SQLiteDatabase db ){
    try{
     

转载于:https://www.cnblogs.com/xiaowangba/archive/2012/12/11/6314356.html

你可能感兴趣的文章
ssiOS应用架构谈 本地持久化方案及动态部署
查看>>
Linux后台执行脚本文件,nohup
查看>>
sql和access中截取字符串的区别
查看>>
11G新特性 -- flashback data archive(2)
查看>>
深入分析MFC文档视图结构(项目实践)
查看>>
WPF笔记(1.9 样式和控件模板)——Hello,WPF!
查看>>
hpu第五届acm比赛
查看>>
IOS学习之蓝牙4.0
查看>>
[stm32] 一个简单的stm32vet6驱动2.4寸240X320的8位并口tft屏DEMO
查看>>
冰河远程控制软件使用
查看>>
hdu 5583 Kingdom of Black and White(模拟,技巧)
查看>>
线段树模板
查看>>
SQL生成n位随机字符串
查看>>
hdu 1575 Tr A(矩阵快速幂乘法优化算法)
查看>>
Django框架学习
查看>>
初识对面向对象编程。
查看>>
int 0x13中断的參数传递
查看>>
Lua Development Tools (LDT)
查看>>
cocos2dx 自己主动加入cpp文件到android.mk
查看>>
static inline Linux内联函数
查看>>