SQLite简介、常用SQL语句、SQL使用速查
2016-09-12 10:32
627 查看
一.SQLite 简介
目标
知道 SQLite 基本概念知道关系型数据库的基本概念和术语
简介
是一款轻量级数据库设计目标是嵌入式的
占用资源少
处理速度快
当前版本 3.13,MAC 内置已经安装了 SQLite
官方网站:http://www.sqlite.org/
什么是 SQLite
SQLite是一个 SQL 数据库引擎,具有:
自给自足
不需要任何外部的依赖
无服务器
不需要一个单独的服务器进程或操作的系统
零配置
不需要安装或管理
一个完整的 SQLite 数据库就是一个单一的磁盘文件
轻量级
完全配置时小于 400K,省略可选功能配置时小于 250K
事务性支持
非常适合用于移动端的本地数据存储
服务端使用的数据库,如:
Orcal,
SQL Server,
MySQL...则需要独立的服务器,安装,配置,维护……
关系型数据库的特点
![](http://blog.csdn.net/lichuanlong007/article/details/database%20sample.png)
一个
列/字段(COL)存储一个值,类似于对象的一个属性
一
行(ROW)存储一条记录,类似于一个对象
一个
表(TABLE)存储一系列数据,类似于对象数组
多个
表之间存在一定
关系,类似于对象之间的关系,例如:一条微博数据中包含用户记录
术语
字段(Col / Field):一个字段存储一个值,可以存储
INTEGER,
REAL,
TEXT,
BLOB,
NULL五种类型的数据
SQLite 在存储时,本质上并不区分准确的数据类型
数据库主要的目的是做数据的检索,通常不会把无法检索的二进制数据保存在数据库中
主键:
Primary Key,
唯一标示一条记录的字段,具有以下特点:
名字:xxx_id
类型:Integer
自动增长
准确数值由数据库决定,程序员不用关心
外键:
Foreign Key,对应其他关系表的标示,利用
外键可以和另外一个
表建立起"关系"
方便数据维护
节约存储空间
二.常用 SQL 语句
目标
知道 SQL 语句的三个分类掌握常用 SQL 语句的基本语法结构
做到能够基本看懂简单的 SQL 语句
在数据库开发中,针对数据库的操作都是通过 SQL 语句执行的
作为移动端的程序员,需要掌握简单/常用 SQL 语句的编写和维护能力
SQL 语句分类
DDL - 数据定义语言
命令 | 描述 |
---|---|
CREATE | 创建一个新的表,一个表的视图,或者数据库中的其他对象 |
ALTER | 修改数据库中的某个已有的数据库对象,比如一个表 |
DROP | 删除整个表,或者表的视图,或者数据库中的其他对象 |
DML - 数据操作语言
命令 | 描述 |
---|---|
INSERT | 新增 |
UPDATE | 修改 |
DELETE | 删除 |
DQL - 数据查询语言
命令 | 描述 |
---|---|
SELECT | 查询 |
三.SQL使用 速查
创建表
/* 创建数据表 CREATE TABLE '表名' ( '字段名' 类型(INTEGER, REAL, TEXT, BLOB) NOT NULL 不允许为空 PRIMARY KEY 主键 AUTOINCREMENT 自增长, '字段名2' 类型, ... ) 注意:在开发中,如果是从 Navicat 粘贴的 SQL,需要自己添加一个指令 IF NOT EXISTS 加在表名前,如果数据表已经存在,就什么也不做 */ CREATE TABLE IF NOT EXISTS "T_Person" ( "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, "name" TEXT, "age" INTEGER, "heigth" REAL ) /* 简单约束 */ CREATE TABLE IF NOT EXISTS t_student ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER ); CREATE TABLE IF NOT EXISTS t_student ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT UNIQUE, age INTEGER ); /* 添加主键 */ CREATE TABLE IF NOT EXISTS t_student ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, score REAL ); /* 添加主键 */ CREATE TABLE IF NOT EXISTS t_student ( id INTEGER, name TEXT, age INTEGER, score REAL, PRIMARY KEY(id) );
![](http://blog.csdn.net/lichuanlong007/article/details/create-table-stmt.gif)
插入
INSERT INTO t_student (age, score, name) VALUES ('28', 100, 'zhangsan'); INSERT INTO t_student (name, age) VALUES ('lisi', '28'); INSERT INTO t_student (score) VALUES (100);
![](http://blog.csdn.net/lichuanlong007/article/details/insert-stmt.gif)
修改
UPDATE t_student SET name = 'MM' WHERE age = 10; UPDATE t_student SET name = 'WW' WHERE age is 7; UPDATE t_student SET name = 'XXOO' WHERE age < 20; UPDATE t_student SET name = 'NNMM' WHERE age < 50 and score > 10; /*更新记录的name*/ UPDATE t_student SET name = 'zhangsan';
![](http://blog.csdn.net/lichuanlong007/article/details/update-stmt.gif)
删除
DELETE FROM t_student; DELETE FROM t_student WHERE age < 50;
![](http://blog.csdn.net/lichuanlong007/article/details/delete-stmt.gif)
查询
/* 分页 */ SELECT * FROM t_student ORDER BY id ASC LIMIT 30, 10; /* 排序 */ SELECT * FROM t_student WHERE score > 50 ORDER BY age DESC; SELECT * FROM t_student WHERE score < 50 ORDER BY age ASC , score DESC; /* 计量 */ SELECT COUNT(*) FROM t_student WHERE age > 50; /* 别名 */ SELECT name as myName, age as myAge, score as myScore FROM t_student; SELECT name myName, age myAge, score myScore FROM t_student; SELECT s.name myName, s.age myAge, s.score myScore FROM t_student s WHERE s.age > 50; /* 查询 */ SELECT name, age, score FROM t_student; SELECT * FROM t_student;
![](http://blog.csdn.net/lichuanlong007/article/details/select-stmt.gif)
删除表
/*删除表*/ DROP TABLE IF EXISTS t_student;
![](http://blog.csdn.net/lichuanlong007/article/details/drop-table-stmt.gif)
相关文章推荐
- Oracle中,常用SQL语句使用和例子
- sql常用语句速查手册
- Android数据存储(七) SQLite使用注意和SQL语句
- sqlite3 SQL常用语句
- 我的Php学习笔记(六)Mysql简介和创建新的数据库 常用的SQL语句
- 通用SQL查询语句精华使用简介
- SQL语句使用大全,最常用的SQL语句
- SQL语句使用大全,最常用的sql语句
- SQL语句使用大全,最常用的sql语句
- 使用SQL语句获取SQLite中的表定义
- Sqlite3常用SQL语句总结,一是防止自己忘了,二是分享
- SQL语句使用大全,最常用的SQL语句
- SQL语句使用大全,最常用的sql语句
- SQLITE3 使用总结(SQL语句操作,加密)
- 常用 SQL 语句总结 (主要是存储过程中的使用)
- SQL语句使用大全,最常用的sql语句
- sqlite中常用的sql语句
- SQL语句使用大全,最常用的sql语句
- SQLITE常用SQL语句
- 目前最全的常用SQL语句示例(急用速查).