数据库一般分为 关系型和对象型,关系型是主流,对象型数据库是直接把对象存入数据库。
常用关系型数据库:
PC:Oracle MysqL sql Server DB2
嵌入式/移动端:sqlite
1.sqlite实际无类型,但是表层划分数据为以下类型。
@H_404_39@
integer整形
@H_404_39@
real浮点型
@H_404_39@
text文本
@H_404_39@
blob二进制数据
@H_404_39@
有类型只是为了规范和易读,没有实质用途。
@H_404_39@
@H_404_39@
@H_404_39@
2.sql语言是一种对关系型数据库中的数据进行定义和操作的语言。
@H_404_39@
常见操作为增删改查(CRUD,create,read,update、delete),
sql不区分大小写。
@H_404_39@
注意数据库中的字符串用单引号,语句规范为关键字大写。
@H_404_39@
@H_404_39@
@H_404_39@
3.数据库语句分类
@H_404_39@
数据定义语句(DDL:Data Definition Language),包括create和drop等操作,分别用于创建和删除表。
@H_404_39@
数据操作语句(DML:Data Manipulation Language),包括insert、update、delete等操作。
@H_404_39@
数据查询语句(DQL:Data Query Language),包括select等操作。
@H_404_39@
@H_404_39@
@H_404_39@
4.常用语句
@H_404_39@
创建表格:
@H_404_39@
CREATE TABLE IF NOT EXISTS 表名 (字段1,类型,字段2,…);删除表格: @H_404_39@
DROP TABLE IF EXISTS 表名;@H_404_39@
条件语句:
@H_404_39@
WHERE 字段(=,!=,>,<,is,is not,)值;
@H_404_39@
条件语句的并列:条件1 AND/OR 条件2;
@H_404_39@
@H_404_39@
@H_404_39@
排序条件:
@H_404_39@
ORDER BY 字段 ASC/DESC;
@H_404_39@
@H_404_39@
@H_404_39@
增删改查:
@H_404_39@
@H_404_39@
INSERT INTO 表名 (字段1,...) VALUES (值1,值2,…);@H_404_39@
UPDATE 表名 SET 字段1 = 值1,字段2 = 值2 条件;@H_404_39@
DELETE FROM 表名 条件;
@H_404_39@
通配符:*
@H_404_39@
@H_404_39@
@H_404_39@
别名AS:字段名 AS 别名,别名支持中文。
@H_404_39@
@H_404_39@
@H_404_39@
计算记录条数: count函数,接收的参数为字段,一般放*即可
@H_404_39@
例如 SELECT count(*) FROM 表名。
@H_404_39@
注意这样写只会计算一次记录条数,不会因为字段多而重复执行。
@H_404_39@
@H_404_39@
@H_404_39@
分页查询
@H_404_39@
limit可以精确控制查询结果的数量。
@H_404_39@
SELECT 字段 FROM 表名 LIMIT x,y; /*表示跳过前面的x条数据,取y条数据。*/
@H_404_39@
常用来进行分页查询,例如每页5条
@H_404_39@
(0,5) (5,5) (10,5)这样处理,注意数字的连贯性,不用跳1。
@H_404_39@
第N页:(5*(N-1),5)。
@H_404_39@
省略的写法:limit y,表示x=0
@H_404_39@
@H_404_39@
@H_404_39@
约束
@H_404_39@
①创建表时指定某个字段非空NOT NULL,唯一UNIQUE,多个条件直接并列不必任何修饰符。
@H_404_39@
CREATE TABLE 表名 (字段名字段类型 NOT NULL UNIQUE);
@H_404_39@