ISQLite语法与Android数据库操作

SQLite语法与Android数据库操作 学习android的小伙伴们在使用Android的SQLiteDatabase类进行数据库操作的时候总会有一些力不从心,特别是对于初涉数据库的小伙伴来说更是如此。 这是因为Android的SQLiteDatabase原本就不是依赖于Android而存在的,而是单独的作为一个个体而存在的,有着自己特有的体系和语言,而这就是SQL语法了。 关于SQLite数据库的理论知识网上一搜一大片,这里就不多说。SQLite是一个轻量型的数据库,它对于大型数据库来说功能少,因此只需要学习一些通用的SQL语法就能够轻松掌握,而这些SQL语法对于其他的数据库来说也是基本不变化的。 但SQLite有个缺点,那就是作为轻量级选手的它,如果要保存大量数据会力有不及,因此它在android中适合保存个人设置等没有大量数据的信息。 好了,下面就是正式学习SQLite了,只有掌握了SQLite,掌握SQL语法,才能对Android中的数据库操作运用自如。 SQLite的数据类型 与Java语言一样,SQLite也有其特有的数据类型,当然相比MySQL来说只有5种数据类型算是很少了 NULL:空值相当于Java中的null INTEGER:带符号的整型,相当于Java中的int型 REAL:浮点数字,相当于Java中float/double型 TEXT/VARCHAR:字符串文本,相当于Java中String类 BLOB:二进制对象,相当于Java中的byte数组,用于存放图片、声音等文件 Sqlite3中的约束 SQLite的约束是什么呢?约束就是限定数据库字段的条件,如果有个student数据表,它里面有一个age年龄的属性字段,我们要求数据库保存age这个字段的时候必须有值,不能为空,那么就可以设置为:"age INTEGER NOT NULL"。这句话的意思就是age字段是不能为空的整型 NOT NULL :非空 UNIQUE : 唯一 PRIMARY KEY :主键 FOREIGN KEY : 外键 CHECK :条件检查 DEFAULT : 默认 创建表,此时可对表里的结构和字段进行约束限定,将约束条件放在需要约束的字段之后 创建表 数据库是数据库,数据表是存放在数据库中存放信息的容器,这点大家要区分。 语法: create table tabname(col1 type1 [not null][primary key], col2 type2[not null], ··· ) 注: tabname为表名 col1、col2为字段名字 type1、type2为字段类型 在[]中的约束条件是可以选的 例: 字段名 类型 长度 约束 说明 id INTEGER 主键,自增长 编号 name VARCHAR 20 非空 姓名 cid INTEGER 所在班级 age INTEGER 大于18且小于60 年龄 gender BIT 默认为1,表示男 性别 score REAL 成绩 create table student( id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(20) NOT NULL, cid INTEGER, age INTEGER CHECK(age>18 and age<60), gender BIT DEFAULT(1), score REAL); 注:SQL中不区分大小写 insert插入语句 数据库的操作无非四大类,增删改查这几种,因此必须要掌握这几种语句,insert增加也就是在数据表中添加信息 语法 insert into table1(field1, field2) values(value1, value2); 语法详解,在表名为table1的表的field1和field2字段分别插入value1和value2的值 例: 给student表中的各个字段插入值 insert into student (name, cid, age, gender, score) values ('tom', 1, 20, 1, 80.0); 注:其实可以在student后面不带有字段名,即name,cid···等,但如果不携带字段信息但看insert语句就无法直接明了的知道插入的value是给哪个字段赋值 update更新语句 语法: update table1 set field1=value1 where 范围 语法详解:set后面是某个字段要更改的值,where表示限定field1字段value值在某个范围内才需要修改 set表示要修改哪个字段的值 where表示修改字段值的范围 例: update student set name='j

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐