11SQLite3 里面的数据类型_SQLite Manager_常用的sql语句

SQLite3 里面的数据类型4种:
integer 整型 text 文本字符串 real 实数(浮点型数据)blob存放一些较大的二进制数据

SQLite Manager:
SQLite Manager的作用
创建了一个数据库 数据库的后缀名一般为 .sqlite或.db
创建一张表 表中添加了5个字段并设置了字段数据类型
插入记录
查询记录
修改记录
删除记录

1、创建表

CREATE TABLE 表名 (字段名1 字段类型,字段名2 字段类型,……)
CREATE TABLE Teacher (name text,sex text,age integer)

在写SQL语句时 注意输入法中英文切换问题

execute 执行
syntax 语法

2、插入一条记录

INSERT INTO 表名 (字段1,字段2,字段3,字段4)VALUES (值1,值2,值3,值4)

下方形式必须值跟字段一一对应 一个都不能少

INSERT INTO 表名 VALUES (值1,值2,值3,值4,值5)
INSERT INTO Students VALUES('张三','男', 23,175,70)

当值为文本时 需要加引号(双引号或单引号)当值为整型或浮点型时 不需要加引号

3、查询

SELECT 字段名 FROM 表名
SELECT 字段名,字段名,字段名,…… FROM 表名
SELECT * FROM 表名

WHERE语句用于有条件地从表中选取数据 可将WHERE子句添加到SELECT语句
语法
在SELECT查询语句后+WHERE 字段名 运算符 值

SELECT * FROM Students WHERE name =  '张三';

数据库提供内置函数:MAX(最大值), MIN(最小值), AVG(平均值)SUM(总值)

SELECT MAX(字段名) FROM 表名
SELECT * FROM Students WHERE age BETWEEN 10 AND 100

运算符有=,<>(不等于 !=),>,<,>=,<=,BETWEEN(在某个范围内 前闭后闭),LIKE(搜索某种模式 %可以代表任意一串字符 _代表一个任意字符)
abcd
_b%
查询有d的字符串 %d%

SELECT * FROM  AAA WHERE column1 LIKE  '%d%'

查询第二位有b的字符串 _b%

SELECT * FROM  AAA WHERE column1 LIKE  '_b%'

引号:SQL使用单引号(也支持双引号)来环绕文本值。如果是数值,则不要使用引号

4、修改
UPDATE语句用来修改表中的数据
语法:

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 (where后是一个条件)
UPDATE 表名称 SET 列名称 = 新值,列名称 = 新值 WHERE 列名称 = 某值
UPDATE Students SET age = 20 WHERE name = '李雷'
UPDATE Students SET age = 20,height = 190.5 WHERE name = '李雷'

5、删除
DELETE用于删除表中的行
语法:

DELETE FROM 表名称 WHERE 列名称 = 值
DELETE  FROM Students WHERE name = '小芳'

删除所有行 即在不删除表的情况下删除所有的行,表的结构、索引、字段都是完整的

DELETE FROM 表名
DELETE FROM Teacher

6、约束
SQL约束 用于限制加入表的数据的类型。可以在创建表时规定约束,或者表创建过后也可以,主要有以下几种约束

 NOT NULL 约束强制列不接受空值 空值无法插入新纪录或更新纪录
 UNIQUE 约束唯一标识数据库表中的某个字段
 PRIMARY KEY 主键 每个表中都应有且只能有一个主键 主键列不能为NULL值
 FOREIGN KEY 外键 关键表
 DEFAULT 给字段添加默认值
 AUTOINCREMENT 自动增长

7、SELECT DISTINCT 查询不重复的数据
语法:

SELECT DISTINCT 列名称 FROM 表名称
SELECT DISTINCT name FROM Students
SELECT DISTINCT * FROM Students

8、AND和OR运算符 用于基于一个或多个条件对数据进行过滤
如果两个条件都成立 AND运算符返回一条数据

SELECT  * FROM Students WHERE name='张三' AND weight = '50'

只要一个条件成立 OR运算符就返回一条数据

SELECT  * FROM Students WHERE name='张三' OR weight = '50'

9、ORDER BY语句用于对结果集进行排序
根据指定列对结果集进行排序 默认按照升序对记录进行排序 降序使用关键字DESC 升序ASC

SELECT 字段名 FROM 表名称 ORDER BY 字段名 条件(DESC或ASC)
SELECT 字段名,字段名 FROM 表名称 ORDER BY 字段名 条件,字段名 条件(DESC或ASC)
SELECT * FROM Students ORDER BY name DESC, age DESC
desending 降序
asending 升序

常用的SQL语句
1,创建表

CREATE 创建
TABLE 表
PRIMARY KEY主键
AUTOINCREMENT自动增长
NOT NULL 非空
UNIQUE 唯一的

CREATE TABLE Teacher1 (teacher_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE, teacher_name TEXT,teacher_sex BOOLEAN)
CREATE TABLE Teacher2 (teacher_id INTEGER PRIMARY KEY AUTOINCREMENT, teacher_name TEXT,teacher_sex BOOLEAN)

2, 删除表

DROP TABLE Teacher1

3,给表添加列

ALTER TABLE Teacher2 ADD teacher_age INTEGER

4,插入数据

INSERT INTO Teacher VALUES(1,'zhangsan',1)
INSERT INTO Students (name,sex)VALUES('zhangsan',0)

5,查询数据

SELECT 查询
* 全部
FROM
SELECT * FROM Students
SELECT * FROM Students WHERE number<10
SELECT * FROM Students WHERE number<10 OR sex=1
SELECT * FROM Students WHERE number<10 AND number>5

like 匹配

SELECT * FROM Students WHERE name like 'zhang%'
SELECT * FROM Students WHERE name like 'zhang_'

%通配 多个字符,_通配一个字符

SELECT count(*) FROM student,查询表中数据的条数。
SELECT * FROM student WHERE student_age = (SELECT max(student_age) FROM student)
max(列名)  min(列名)  查询这一列的最大,最小值.
SELECT * FROM student ORDER BY student_age ASC
ORDER BY 把查询结果排序 ,ASC顺序,DESC倒序
LIMIT 限制
从第六条开始 往后的15条
SELECT * FROM Students LIMIT 5,15

6,修改数据

UPDATE 更新
set 设置

UPDATE Students set name='lisi',sex=1 where number < 10 AND number>5

7,删除数据

DELETE 删除

DELETE FROM Students WHERE number > 25
    原文作者:AsaGuo
    原文地址: https://www.jianshu.com/p/e8f4dab21a47
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞