随笔分类 - MySQL
摘要:PDO概述 连接数据库方式 mysql扩展 (这种方式php7已经淘汰) mysqli扩展 PDO扩展 PDO介绍 PDO(PHP Data Object)扩展为PHP访问各种数据库提供了一个轻量级,一致性的接口 无论访问什么数据库,都可以通过一致性的接口去操作 开启PDO扩展 开启PDO连接MyS
阅读全文
摘要:连接数据库 数据库在网站中的位置 前端 → HTTP协议 → PHP服务器 → MySQL数据库 开启MySQL扩展 在php.ini中开启mysqli扩展 extension=php_mysqli.dll 开启扩展后重启服务器,就可以使用mysqli_函数了 连接数据库 创建news数据库 Mar
阅读全文
摘要:数据库备份与还原 概念 数据库中的数据需要定期备份 数据量小的可以一周备份一次 数据量大的可以一天备份一次 数据备份 语法 mysqldump 数据库连接 数据库 > SQL文件备份地址 # mysqldump -uroot -p sel>D:\Database\sel.sql Enter pass
阅读全文
摘要:预处理 概念 每个代码的段的执行都要经历 词法分析——语法分析——编译——执行 预编译一次,可以多次执行 用来解决一条SQL语句频繁执行的问题 语法 预处理语句:prepare 预处理名字 from ‘sql语句’ 执行预处理:execute 预处理名字 [using 变量] MySQL中变量以@开
阅读全文
摘要:函数 数字类 获取随机数 rand() MariaDB [sel]> select rand(); + + | rand() | + + | 0.3974576679966018 | + + # `1 row in set (0.000 sec)` 随机排序 MariaDB [sel]> selec
阅读全文
摘要:索引 概述 优点 加快查询速度 缺点 带索引的表在数据库中需要更多的存储空间 增、删、改命令需要更长的处理时间,因为它们需要对索引进行更新 创建索引的指导原则 适合创建索引的列 该列用于频繁搜索 该列用于对数据进行排序 在WHERE子句中出现的列,在join子句中出现的列 请不要使用下面的列创建索引
阅读全文
摘要:事务 概述 事务(TRANSACTION)是一个整体,要么一起执行,要么一起不执行 事务特性:事务必须具备以下四个属性,简称ACID 属性 原子性(Atomicity) 事务是一个完整的操作 事务的各步操作是不可分的(原子的) 要么都执行,要么都不执行 一致性(Consistency) 当事务完成时
阅读全文
摘要:视图 概述 视图是一张虚拟表,它表示一张表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上 视图中并不存放数据,而是存放在视图所引用的原始表(基表)中 同一张原始表,根据不同用户的不同需求,可以创建不同的视图 作用 筛选表中的行 防止未经许可的用户访问敏感数据 隐藏数据表的结构 降
阅读全文
摘要:子查询 语法 select * from 表1 where (子查询) 说明 外面的查询称为父查询 子查询为父查询提供查询条件 标量子查询 特点 子查询返回的值是一个 MariaDB [sel]> select * from resume where name=(select name from r
阅读全文
摘要:using 概念 using用来指定连接字段 using的结果也会对公共字段进行优化,优化的规则和自然连接是一样的 MariaDB [sel]> select * from grades inner join resume using(name); + + + + + + | name | chin
阅读全文
摘要:自然连接 概念 自动判断条件连接,判断的条件是依据同名字段 小结 表连接是通过同名字段来连接的 如果没有同名字段就返回笛卡尔积 同名的连接字段只显示一个,并且将该字段放在最前面 自然内连接(natural join) MariaDB [sel]> select * from grades natur
阅读全文
摘要:交叉连接 语法 select * from 表1 cross join 表2 on ... 交叉连接如果没有连接条件返回笛卡尔积 如果有连接条件和内连接是一样的 MariaDB [sel]> select * from grades cross join resume; + + + + + + +
阅读全文
摘要:右外连接 规则 以右边的表为准,左边如果没有对应的记录用null显示 语法 select * from 表1 right join 表2 on 表1.公共字段=表2.公共字段 MariaDB [sel]> select math,id from grades right join resume on
阅读全文
摘要:左外连接 规则 以左边的表为准,右边如果没有对应的记录用null显示 语法 select * from 表1 left join 表2 on 表1.公共字段=表2.公共字段 MariaDB [sel]> select math,id from grades left join resume on g
阅读全文
摘要:内连接 规则 返回两个表的公共记录 语法 inner join...on 语法 select * from 表1 inner join 表2 on 表1.公共字段=表2.公共字段 where 语法 select * from 表1,表2 where 表1.公共字段=表2.公共字段 MariaDB [
阅读全文
摘要:插入数据时的主键冲突 如果插入的主键重复会报错 -- 插入测试表 mysql> create table stu( -> id char(4) primary key, -> name varchar(20) -> )engine=innodb; # `Query OK, 0 rows affect
阅读全文
摘要:联合查询(union) MariaDB [sel]> create table resume( -> id tinyint unsigned auto_increment primary key, -> name varchar(20) not null, -> skill set('php','m
阅读全文
摘要:模糊查询 通配符 通配符 _ [下划线] 表示任意一个字符 % 表示任意字符 # 满足“T_m”的有(A、C) A:Tom B:Toom C:Tam D:Tm E:Tmo # 满足“T_m_”的有( B C) A:Tmom B:Tmmm C:T1m2 D:Tmm E:Tm # 满足“张%”的是(AB
阅读全文
摘要:聚合函数 聚合函数 sum() 求和 avg() 求平均值 max() 求最大值 min() 求最小值 count() 求记录数 MariaDB [sel]> select max(chinese) '语文最高分' from grades; + + | 语文最高分 | + + | 98 | + +
阅读全文
摘要:select查询语句 语法 select [选项] 列名 [from 表名] [where 条件] [group by 分组] [order by 排序][having 条件] [limit 限制] select字段表达式 可以直接输出内容 MariaDB [sel]> select 'Sunny
阅读全文

浙公网安备 33010602011771号