• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > android开发之路09(浅谈SQLite数据库01),androidsqlite

android开发之路09(浅谈SQLite数据库01),androidsqlite

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android开发sqlite,android开发数据库,android开发,android开发环境搭建,android开发工具等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

android开发之路09(浅谈SQLite数据库01),androidsqlite


1.SQLite数据库:

SQLite 是一个开源的嵌入式关系数据库,实现自包容、零配置、支持事务的SQL数据库引擎。 其特点是高度便携、使

 

用方便、结构紧凑、高效、可靠。 与其他数据库管理系统不同,SQLite 的安装和运行非常简单,在大多数情况下 - 只要确保

 

SQLite的二进制文件存在即可开始创建、连接和使用数据库。

对于SDK来讲,已经内置了SQLite的程序,因此我们不需要在SQLite官网上下载。一般数据库采用的都是静态的数据类

 

型,而我们的SQLite数据库采用的是动态数据库,会根据存入值自动判断。SQLite 数据库相对于其他数据库最大的特点是我们

 

可以把各种类型的数据保存到任何字段中,而不用关心字段声明的类型是什么。有一种特殊的情况是,定义为INTEGER PRIMARY 

 

KEY 的字段只能存储64位整数。SQLite具有以下五种类型:

1.NULL:空值;

2.INTEGER:带符号的整形,具体取决于存入数字的范围大小;

3.REAL:浮点数字;

4.TEXT:字符串文本;

5.BLOB:二进制对象;

2.相关操作

①创建数据库:sqlite3 test.db;

②创建表:create table userInfo(userId integer primary key autoincrement,name varchar(20));

SQLite数据库可以解析大部分标准SQL语句:

①查询语句:select * from 表名 where 条件子句 group by 分组子句 having...order by 排序子句

例如:select * from userInfo order by id desc;

      select * from userInfo group by name having count(*)>1

②插入语句:insert into 表名(字段列表) values(值列表)

例如:insert into userInfo(name,age) values('张三',20)

③更新语句:update 表名 set 字段名=值 where 条件子句

例如:update person set name = '张三' where id = 10

④删除语句:delete from 表名 where 条件子句

例如:delete from userInfo where id = 10

 

实例代码:

1.创建一个JavaBean

public class Student {

private int sid;

private String name;

private short age;

 

public Student() {

super();

}

public Student(int sid, String name, short age) {

super();

this.sid = sid;

this.name = name;

this.age = age;

}

 

public int getSid() {

return sid;

}

public void setSid(int sid) {

this.sid = sid;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public short getAge() {

return age;

}

 

public void setAge(short age) {

this.age = age;

}

@Override

public String toString() {

return "Student [sid=" + sid + ", name=" + name + ", age=" + age + "]";

}

 

 

 

}

 

2.创建一个用于创建SQLite数据库的类DBOpenHelper .java

 

public class DBOpenHelper extends SQLiteOpenHelper{

 

private static final String DBNAME="data.db";

private static CursorFactory factory=null;

private static final int VERSION=1;

public DBOpenHelper(Context context) {

super(context, DBNAME, factory, VERSION);

}

 

//当数据库第一次被创建的时候,执行该方法

@Override

public void onCreate(SQLiteDatabase db) {

//sql语句中的字段名与Student.java的成员变量对应

String sql="create table t_student (sid integer primary key,"

+ "name varchar(20),age integer)";

db.execSQL(sql);

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

 

}

 

}

 

3.创建一个操作数据库的类StudentDAO .java

 

public class StudentDAO {

private DBOpenHelper helper;

private SQLiteDatabase db;

 

public StudentDAO(Context context) {

// 创建DBOpenHelper的实例

helper = new DBOpenHelper(context);

}

 

public void add(Student student) {

/**

 * Android使用getWritableDatabase()和getReadableDatabase()方法都可以获取一个用于操作数据库的SQLiteDatabase实例

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android开发8:数据存储(二)——SQLite数据库和ContentProvider的使用,
  • android开发之路09(浅谈SQLite数据库01),androidsqlite

相关文章

  • 2017-05-26Android Drawable的9种子类 介绍
  • 2017-05-26Intent(二)隐式调用intent,调用intent
  • 2017-05-26Mac Android studio提交本地项目到Github 已经配置 SSH KEY
  • 2017-05-26自定义控件详解(一):Paint类与Canvas类,paintcanvas
  • 2017-05-26App启动页倒计时功能,app启动倒计时
  • 2017-05-26安卓第二天笔记-数据保存,安卓第二天笔记保存
  • 2017-05-26React Native Android入门实战及深入源码分析系列(2)——React Native源码编译
  • 2017-05-26安卓开源项目周报0222,安卓开源项目0222
  • 2017-05-26菜鸟新闻2--设置沉浸式状态栏,新闻2--沉浸状态栏
  • 2017-05-26安卓应用程序的签名

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Android View体系(五)从源码解析View的事件分发机制
    • andriod ==和equals,andriodequals
    • 安卓开发中内存问题分析(一)工具篇
    • 手机影音2--软件架构分析,影音2--架构分析
    • ViewPager+GridView实现首页导航栏布局分页效果,viewpagergridview
    • 浅谈Android Small插件化框架源码
    • 安卓第五天笔记-对话框,安卓第五天笔记
    • 在 Android 上使用 RxNetty
    • 微信支付,信支付
    • 看Facebook是如何优化React Native性能,facebookreact

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有