iOS中的数据存储方式--sqlite3

1、Plist(NSArray\NSDictionary)

2、Preference(偏好设置\NSUserDefaults)

3、NSCoding(NSKeyedArchiver\NSkeyedUnarchiver)

4、SQLite3

5、Core Data

首先认识一下数据库:

  • 数据库是如何存储数据的
  • 数据库的存储结构和excel很像,以表(table)为单位
  • 数据库存储数据的步骤
  • 新建一张表(table)
  • 添加多个字段(column,列,属性)
  • 添加多行记录(row,record,每行存放多个字段对应的值)


  • 什么是SQLite
  • SQLite是一款轻型的嵌入式数据库
  • 它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了
  • 它的处理速度比Mysql、PostgreSQL这两款著名的数据库都还快
  • 常用关系型数据库
  • PC端:Oracle、MySQL、SQL Server、Access、DB2、Sybase
  • 嵌入式\移动客户端:SQLite

关于sql:



sqlite(structured query language):结构化查询语言,是一种对关系型数据进行定义和操作的语言,语言简洁,语法简单,好学好用。关于sql语句,就是使用sql语言编写出来的句子或者代码。在程序运行过程中,想要操作数据库中的数据必须使用sql语句。另外,数据库中不可以使用关键字来命名表或者字段。




sql语句的特点:


1、不区分大小写;


2、每条语句都必须以分号“;”结尾;


3、sqlite3数据库是纯c语言编写,轻量级,而core data数据库是基于sqlite3属于oc版本,比较庞大,重量级的数据库。


sql的常用关键字:

select、insert、update、delete、from、create、where、desc、order、by、group、table、alter、view、index等等。


sql的语句的种类:


数据定义语句:包括create和drop等操作,在数据库中创建新表和删除表(create table,drop table)。

 

数据操作语句:包括insert、update、delete等操作。


数据查询语句:关键字是select;其他常用的有where,order by,group by,和having



sql将数据划分为以下几种类型:



integer:整型值;real,浮点值;text,文本字符串;blob,二进制数据;


常见的sql语句:


create table if not exists t_person(id integer primary key autoincrement ,name text,age integer);
insert into t_person (name, price) values ('手机',100);
delete from t_person where price <1000;
update t_person set name = '吼吼' where price < 1000;
delete from t_person where price <1000 or count < 2000;
delete from t_person where price <1000 and count < 2000;
select name 别名 , price 库存 from t_person;(可以选择的时候起别名)
select * from t_person;
select count(name) from t_person where price <2000;注意:count是个函数,此语句返回的是选择的数量,查找某个条件的数量。
select * from t_person order by price desc,count asc;
limit 可以精确控制查询结果的数量。
比如:select * from t_person limit4,8;可以理解为:跳过最前面的4条语句,然后取8条记录。
select * from t_person order by price desc limit 0,10;
create table if not exists t_student(name text not null unique, age integer not null);