Android Studio 之 SQLite的学习与使用(1)

2018-12-16  本文已影响0人  Liebeslied


SQLite的学习

1.特点

    程序驱动,嵌入式,不需要专门的数据库引擎+

    SQLite其实是无数据类型的。指定类型后但不做检查。

    有五种类型:Integer varchar(10) float double char(10) text

2.Sql通用常用指令

    2.1创建表的语句

        create table 表名(字段名称 数据类型 约束,字段名称 数据类型 约束......)

        create table person(_id Integer primary key,namevarchar(10),age Integer not null)

    2.2删除表的语句

        Drop table 表名

    2.3插入数据

        Insert into 表名[字段,字段] values(值1,值2......)

        //中括号此处表示可有可无

        Insert into person(_id,age) values(1,20)

        Insert into person values(2,”zs”,30)  //如果没有在person后加字段,则values里的值按顺序给各字段插入

    2.4修改数据

        Update 表名set 字段=新值where 修改的条件

        Update person set name=”ls” where _id=1   //意思是把_id等于1的人的名字修改成ls

        如果是要修改多个值,就Update person set name=”ls”,age=20 where _id=1

    2.5删除数据

        Delete from 表名 where 删除的条件

        Delete from person where _id=2  //person后不加字段限制则全部删除

    2.6查询语句

        Select 字段名 from 表名 where 查询条件 group by 分组的字段 having 筛选的条件order by 排序字段

        Select * from person; //将person中的所有数据展示  *是通配符

        Select * from person where _id=1;//查询person表中_id等于1的人的情况

        Select * from person where _id<>1;//查询person表中_id不等于1的人的情况

        Select * from person where _id<>1 and age>18;//多个条件。查询person表中_id不等于1且age大于18的人的情况

        ...

        Select * from person where _id<>1 order by age;//查询person表中_id不等于1的人的情况,并且按年龄排序

3.Sqlite数据库创建

    3.1用SQLiteOpenHelper这样一个已经定义好的类来创建。这个类里定义了创建方法:onCreate(),数据库升级方法:onUpgrade(),打开数据库方法:onOpen()。

    3.2一个新的项目。先写一个BUTTON,在点击之后触发一个创建数据库的事件。在对应的包下新建一个utils工具类,可以起名为MySqliteHelper,在这里面实现创建数据库/升级数据库/打开数据库等功能,因此它需要extends SQLiteOpenHelper。然后ALT+回车,重写OPEN和UPGRADE,再写相应的构造函数。

    注意到,这里的构造函数需要传入四个参数,之后的时候每次都传四个不太方便,所以再定义一个新的常量工具类:

    ,然后再写一个新的构造函数

    点击,观察log

    先创建一个数据库对象,然后打开。

    数据库中大部分都是用表的形式管理。通常,创建数据库的时候,我们都会创建一个数据库表。比如,此时在数据库的onCREATE中写一个:

    String sql="create table person(_id Integer primary key,name

    varchar(10),age Integer)";

    Create table表示创建一个表 然后person是表名,括号里是字段。同理,为了提高耦合性,可以在常量工具类中定义表名/ID/NAME等信息。

    在CONSTANT里定义好了之后,这句命令改写为:

    String sql="create table "+Constant.TABLE_NAME+"("+Constant._ID+" Integer primary key,"+Constant.NAME+" varchar(10),"+Constant.AGE+" Integer)";

    在双引号括起来的字符串中可以再加“+...+”,中间写变量名。

       定义好sql表后,在下面写一个执行语句。

       然后这张数据库表就创建完成了。


上一篇下一篇

猜你喜欢

热点阅读