SQLite简介、常用SQL语句、SQL使用速查
来源:互联网 发布:淘宝怎么删差评 编辑:程序博客网 时间:2024/05/02 05:06
一.SQLite 简介
目标
- 知道 SQLite 基本概念
- 知道关系型数据库的基本概念和术语
简介
- 是一款轻量级数据库
- 设计目标是嵌入式的
- 占用资源少
- 处理速度快
- 当前版本 3.13,MAC 内置已经安装了 SQLite
官方网站:http://www.sqlite.org/
什么是 SQLite
SQLite
是一个 SQL 数据库引擎,具有:- 自给自足
- 不需要任何外部的依赖
- 无服务器
- 不需要一个单独的服务器进程或操作的系统
- 零配置
- 不需要安装或管理
一个完整的 SQLite 数据库就是一个单一的磁盘文件
- 轻量级
- 完全配置时小于 400K,省略可选功能配置时小于 250K
- 事务性支持
- 非常适合用于移动端的本地数据存储
- 自给自足
服务端使用的数据库,如:
Orcal
,SQL Server
,MySQL
...则需要独立的服务器,安装,配置,维护……
关系型数据库的特点
- 一个
列/字段(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));
插入
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);
修改
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';
删除
DELETE FROM t_student;DELETE FROM t_student WHERE age < 50;
查询
/* 分页 */SELECT * FROM t_studentORDER BY id ASC LIMIT 30, 10;/* 排序 */SELECT * FROM t_studentWHERE score > 50ORDER BY age DESC;SELECT * FROM t_studentWHERE score < 50ORDER BY age ASC , score DESC;/* 计量 */SELECT COUNT(*)FROM t_studentWHERE age > 50;/* 别名 */SELECT name as myName, age as myAge, score as myScoreFROM t_student;SELECT name myName, age myAge, score myScoreFROM t_student;SELECT s.name myName, s.age myAge, s.score myScoreFROM t_student sWHERE s.age > 50;/* 查询 */SELECT name, age, score FROM t_student;SELECT * FROM t_student;
删除表
/*删除表*/DROP TABLE IF EXISTS t_student;
0 0
- SQLite简介、常用SQL语句、SQL使用速查
- sqlite常用sql语句
- SQLITE常用SQL语句
- Sqlite常用sql语句
- sqlite常用sql语句
- SQLite 常用SQL语句
- SQLite 常用语句 sql语句
- SQLite数据库操作--使用SQL语句增删查改
- sqlite数据库常用SQL语句:
- SQL 和 Sqlite 常用语句
- sql常用语句速查手册
- SQL常用语句速查列表
- sql常用语句速查手册
- sql常用语句速查手册
- Android SQLite数据库的使用及常用的增删改查方法、无sql语句的方法
- sqlite基本sql语句使用
- sqlite基本sql语句使用
- sqlite基本sql语句使用
- Caffe配置简明教程 ( Ubuntu 14.04 / CUDA 7.5 / cuDNN 5.1 / OpenCV 3.1 )
- CoordinatorLayout布局的简单实用
- CSS3动画属性 - animation整理
- Android 性能优化系列总篇 (五)
- 使用chrome浏览器和genymotion来调试ionic
- SQLite简介、常用SQL语句、SQL使用速查
- java入门#每天一个小程序#全排列
- c# winform实现简单的登录功能
- Python常见数据结构详解
- 编程训练
- Tapestry 会话缓存(@SessionState )导致串数据问题处理
- Mybatis的ResultMap详解
- SpringMVC文件上传 Excle文件 Poi解析 验证 去重 并批量导入 MYSQL数据
- Retrofit2.0+RxJava+Dragger2实现不一样的Android网络架构搭建