加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Sqlite的基本操作

发布时间:2020-12-12 20:04:04 所属栏目:百科 来源:网络整理
导读:其一:自己建立数据库 步骤: 1,写一个类继承SQLiteOpenHelper。示例: public class MyHelper extends SQLiteOpenHelper {public MyHelper(Context context){super(context,"name.db",null,1);//调用父类的构造函数,父类会自动创建一个数据库}@Overridepu

其一:自己建立数据库

步骤:

1,写一个类继承SQLiteOpenHelper。示例:

public class MyHelper extends SQLiteOpenHelper {
	public MyHelper(Context context){
		super(context,"name.db",null,1);//调用父类的构造函数,父类会自动创建一个数据库
	}
	@Override
	public void onCreate(SQLiteDatabase db) {
	}
	@Override
	public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion) {
	}
}
注意其中的构造方法:

所有的构造方法调用父类的super(Context,String,CursorFactory,int)。这里的第二个参数指的是要创建的数据库的名(非表名);而super方法,会自动创建一个数据库。而后,我们在这个库中创建任意多张表,在每一个表中进行CRUD操作。我们没有办法自己创建一个数据库,只能通过SQLiteOpenHelper中相应的构造函数来创建;我们能做的就是在创建好的库中创建表(也就是create table),并对表进行操作。

onCreate():

通过构造函数,我们已经创建好了一个库,而onCreate()就是用来在初始化该库的表结构的。也就是说,它是用来在数据库中添加表的,并不是用来创建库的。其中传入的参数db就是通过构造函数创建好的数据库。

其二:

sqlite是支持多种数据类型的(但是数据的大小是没有限制的,即使在创建的时候指定了),所以在实际运用中不能只使用varchar来。例如:

String sql = "CREATE TABLE IF NOT EXISTS "
				+ "error_"
				+ id
				+ "_"
				+ curId
				+ " (_ID INTEGER PRIMARY KEY autoincrement,id int,json varchar(200),type varchar(20))";
		db.execSQL(sql);
这里将id指定为int类型,因为后面需要取最大的id值。如果用成varchar,那么取的结果和int的结果是不一样的。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读