SQLite详解(1)

SQLite详解(1),第1张

概述前言:学习任何一种技术,其实我们一般都解决这样的几个问题:是什么???干什么??怎么用?? 所以,这篇博客也将按照这样的思路:去讲解SQLite这个数据库 一、是什么??       SQLite是一个手机自带的数据库(类似于Access的小型数据库), 不区分数据类型(除了主键), 语法和MySQL相同, 每个库是一个文件 二、干什么??      SQLite能够存储数据,并对数据惊醒增、删、

前言:学习任何一种技术,其实我们一般都解决这样的几个问题:是什么???干什么??怎么用??

所以,这篇博客也将按照这样的思路:去讲解sqlite这个数据库


一、是什么??

sqlite是一个手机自带的数据库(类似于Access的小型数据库),不区分数据类型(除了主键),语法和MysqL相同,每个库是一个文件



二、干什么??

sqlite能够存储数据,并对数据惊醒增、删、改、查。。。而这些功能的实现并不是依赖于JDBC,而是利用AndroID自己提供的API



三、怎么用??

好吧。。这个其实才是我们接下来应该详细讲解的。。。。

任何一个数据库,其实我们都是学习怎么创建库、创建表、基本CRUD、扩展的CRUD、最后学一下

事务,这样就算是基本学完了????对吧。。。。对!!!!!所以接下来就按照这个顺序进行讲解

1、创建库

在这个过程中会涉及到几个类(包括测试类)什么的,

1)DBOpenHelper

public class DBOpenHelper extends sqliteOpenHelper {	// 定义工具类,继承sqliteOpenHelper		public DBOpenHelper(Context context) {	// 创建对象的时候,需要传入上下文环境		super(context,"njupt.db",null,4);		/*		 * 由于父类没有无参构造函数,必须显式调用有参的构造函数		 * 参数1: 上下文环境,用来确定数据库文件存储的目录		 * 参数2: 数据库文件的名字		 * 参数3: 生成游标的工厂,填null就是使用默认的		 * 参数4: 数据库的版本,从1开始		 */	}	@OverrIDe	public voID onCreate(sqliteDatabase db) {		System.out.println("onCreate");		db.execsql("CREATE table person(ID INTEGER PRIMARY KEY autoINCREMENT,name VARCHAR(20))");		// 执行SQL语句,创建表	}	@OverrIDe	public voID onUpgrade(sqliteDatabase db,int oldVersion,int newVersion) {		System.out.println("onUpgrade");		db.execsql("ALTER table person ADD balance INTEGER");	}}
解释:

定义类继承sqliteOpenHelper,定义构造函数,显式调用父类构造函数,传入4个参数
重写onCreate()和onUpgrade()方法
调用getWritableDatabase()或者getReadableDatabase()方法都可以创建数据库
数据库文件不存在时,会创建数据库文件,并且执行onCreate()方法
数据库文件存在,并且版本没有改变时,不执行任何方法
数据库文件存在,版本提升,执行onUpgrade()方法

2)DBTest

这时,我们写一个测试类来测试一下。。。。。。

package cn.njupt.sqlite;import androID.test.AndroIDTestCase;public class DBTest extends AndroIDTestCase {	public voID testCreateDatabase() {		DBOpenHelper helper = new DBOpenHelper(getContext());		helper.getWritableDatabase();			/*		 * 获取可写的数据连接		 * 数据库文件不存在时,并且执行onCreate()方法		 * 数据库文件存在,不执行任何方法		 * 数据库文件存在,执行onUpgrade()方法		 */	}	}

....................................................到这里,创建库应该就讲解完了.......................................................

总结

以上是内存溢出为你收集整理的SQLite详解(1)全部内容,希望文章能够帮你解决SQLite详解(1)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1173610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存