数据库增删改查(重点重点重点)

数据库增删改查(重点重点重点)
1.插入、更新与删除数据

1.1插入数据

1) 为表的所有字段插入数据
INSERT INTO 表名 VALUES(字段值);

2) INSERT语句中列出所有字段
INSERT INTO 表名(字段1,字段2,字段3,。。。字段n) VALUES(值1,值2,值3,、、、值n)

3) 为表的指定字段插入数据
INSERT INTO 表名(指定的字段名1,字段名2 字段名3) VALUES(值1,值2,值3,);

4) 同时插入多条记录
INSERT INTO 表名(字段列表) VALUES(值1,值2,值3,。。。值n),(值1,值2,值3,。。。值n),(值1,值2,值3,。。。值n),(值1,值2,值3,。。。值n),(值1,值2,值3,。。。值n);

5) 将查询结果插入到表中

1.2 更新数据
UPDATE 表名 SET 字段名=值,字段名=值,字段名=值 WHERE id=1

1.3 删除数据
DELETE FROM info WHERE 条件
注意 一定要给一个where条件 否则出现大问题

2.查询数据

2.1 基本查询语句
SELECT 字段列表 FROM 表名
[WHERE 条件表达式]
[GROUP BY 字段名 [HAVING 条件2] ]
[ORDER BY 字段名 ASC|DESC]
[LIMIT]

2.2 单表查询

1)查询所有字段
数据量大的时候使用下面标红的查询方式
列出所有字段(查询速度快)
SELECT id,name,age,sex,city FROM 表名
使用*查询所有字段(查询速度慢)
SELECT * FROM 表名
2)查询指定字段
SELECT id,name FROM 表名
3)查询指定记录

WHERE 子句的条件:
比较: = < > <= >= != <>
指定范围: BETWEEN AND NOT BETWEEN AND
指定集合: IN NOT IN
匹配字符 LIKE NOT LIKE
是否为空值 IS NULL IS NOT NULL
多个条件查询 AND OR

4)带IN关键字查询

IN(字段值,字段值,字段值)

5)带BETWEEN AND的范围查询

BETWEEN 值 AND 值

6)带LIKE的字符串匹配查询

% 任意长度的字符串
_ 代表单个字符串

7)查询空值

SELECT 字段列表 FROM 表名 where 字段 IS null

8)带AND的多条件查询

SELECT 字段列表 FROM 表名 WHERE 字段1 And 字段2

9)带OR的多条件查询

SELECT 字段列表 FROM 表名 WHERE 字段1 or 字段2

10)查询结果不重复

select DISTINCT 字段 FROM 表名

11)对查询结果排序

ORDER BY
SELECT 字段列表 FROM 表名 ORDER BY 字段名 DESC |ASC

12)分组查询

1.单独使用GROUP BY分组
SELECT 字段列表 FROM 表名 GROUP BY 字段名
这样使用只显示每个城市的第一个记录
说明单独使用GROUP BY 只能显示每个分组的一条记录 这样使用意义不大 所以我们需要配合一下函数来使用

2.GROUP BY关键字与GROUP_CONCAT()函数一起使用
SELECT 字段列表,GROUP_CONCAT(字段) FROM 表名 GROUP BY 字段名

3.GROUP BY与集合函数一起使用
count() 统计

4.GROUP BY与HAVING关键字一起使用
SELECT 字段,集合函数 FROM 表名 GROUP BY 字段名 HAVING 条件 子条件

13)用LIMIT限制查询结果的数量

1.不指定初始值
LIMIT 10

2.指定初始值
LIMIT 初始值(从第几条数据开始) ,数字

14)使用集合函数查询

count()
sum()
avg()
max()
min()
拼接函数
concat()

=========================================================================
15)为表和字段取别名

1.为表取别名
SELECT 字段名 FROM 表名 别名;

2.为字段取别名
SELECT id d FROM 表名
16)关联查询

内连查询是最常用的一种连接查询 可以查询 两个或两个以上的表
SELECT 字段列表 FROM 表名1 ,表名2 WHERE 表名1.id = 表名2.id

PHP 连接数据库
1.连接数据库函数
mysqli_connect(主机名,用户名,密码) 返回值 是我们的一个连接对象 如果连接失败 报错 返回false
2.判断错误函数
mysqli_connect_error(连接对象) 错误信息 返回错误信息
mysqli_connect_errno(连接对象) 错误号 0 代表连接成功没有错误
3.选择数据库函数
mysqli_select_db(连接对象,要选择的数据库名); 如果选择成功返回true 否则返回false
4.选择字符集
mysqli_set_charset(连接对象,要选择的字符集);如果选择成功返回true 否则返回false
5.准备sql语句
6.发送sql语句
mysqli_query(连接对象,要发送的s q l语句);成功得到一个对象 失败返回false
7.处理结果集
7.1 获取条目数
a)mysqli_num_rows(发送sql成功的对象) 用来获取查询得到的记录条数 只限select语句使用
b)mysqli_affected_rows(连接对象) 前一次mysql操作的受影响行数 只限 INSERT UPDATE DELETE 操作使用 返回值 1成功插入的条数 -1 执行失败
7.2 获取查询结果集的内容
mysqli_fetch_array(发送对象) 将查询得到的结果以混合数组的形式返回 一次返回一条
mysqli_fetch_row(发送对象) 将查询得到的结果以索引数组的形式返回 一次返回一条
mysqli_fetch_assoc(发送对象) 将查询得到的结果以关联数 组的形式返回 一次返回一条
7.3 添加操作的时候我们可以获取到上一次插入的id
mysqli_insert_id(连接对象) 返回上一次插入的id
8.关闭数据库
mysqli_close(连接对象)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值