excel网站做链接,南开集团网站建设,什么叫营销模式,wordpress写入权限1.mysql
学习数据库就是学习数据库管理系统#xff08;一个数据管理系统可以管理多个数据库#xff09;
安装 安装版本#xff1a;mysql -installter -community-5.7.41.0.msl 流程 1.custom自定义安装 2.选择安装MySQl Server 5.7.41 - x64 3.默…1.mysql
学习数据库就是学习数据库管理系统一个数据管理系统可以管理多个数据库
安装 安装版本mysql -installter -community-5.7.41.0.msl 流程 1.custom自定义安装 2.选择安装MySQl Server 5.7.41 - x64 3.默认使用TCP、IP协议端口3306 4.配置用户密码 默认root用户 直接配置密码 自定义用户 用户名 Host % 所有主机都可以访问 Role 角色 DBA 5.配置服务 服务名 MySQl57 开机启动 测试是否安装 winr-输出cmd-输入 mysql -uroot -p 连接到数据库管理系统 mysql.exe -h 192.168.11.15 远程访问需要权限 -uroot 用户名 -p3306 端口 -p 密码
2.数据库表数据相关SQL语句
2.1 数据库
展示所有数据库 show databases; 查看当前使用的数据库 select database(); 创建数据库 create database 数据库名; 不存在创建 create database if not exists数据库名 charset utf8; 指定编码 create database 数据库名 charset utf8; create database 数据库名 character set utf8; 使用数据库 use 数据库名; 删除数据库 drop database 数据库名;
2.2 表
展示当前数据库所有表 show tables; 创建表 create table 表名(列名 类型 约束信息, 列名 类型 约束信息, .... ) 查看表 desc 表名; 删除表 drop table 表名; 修改表名 rename table 原始表名 to 新表名; 添加列 alter table 表名 add 列名 类型 约束; 删除列 alter table 表名 drop 列名; 修改列 alter table 表名 change 原始列名 新列名 类型 约束;
2.3 数据
查询数据 select * from 表名 select 列1,列2..... from 表名 select * from 表名 where 条件id5 插入数据 全列插入 insert into 表名 values(列1, 列2, 列3,.....); 插入多行 insert into 表名 values(),(),()....; 缺省插入 insert into 表名 (列1,列2) values (值1,值2); 插入多行 insert into 表名 (列1,列2) values (),(),(),...; 只能写入一行 insert into 表名 set 列1值1, 列2 值2...; 修改数据 update 表名 set 列1值1,列2值2 where 条件; 若没有where则修改整个表 删除数据 delete from 表名 where 条件; 若没有where则清空整个表
3.Mysql列的约束
用于限制数据在表中的输入规则 主键primary 外键 foreign key 自增长 auto_increment 唯一 unique 非空 not null 默认 default
4. Mysql数据类型
数字 int bigint float单精度 double双精度 decimal高精度 字符串 char长度 varchar可变长度 text长文本
布尔bool 1、0 日期时间 date time datetime year timestamp 枚举 enum罗列所以可能
5.外键 创建添加删除
外键用于建立表与表之间的关联关系一个表中的外键是另一个表中的主键 创建表时添加 create table 表名 (列...., constraint 外键名 foreign key(外键列名) reference 主表(主键)) on update cascade on delete cascade; 删除 alter table 表名 drop foreign key 外键名;
6.别名查询指定列 条件查询
select 列名 as 别名,列名 as 别名,...from 表名 where 条件 针对查询到的列起别名 多表查询有共同的列表
7.系统函数与聚合函数
系统函数: user()当前用户 version()当前数据库版本 database() current_time current_date current_timestamp 聚合函数 max(列名) select max(列名) from 表名 min(列名) sum(列名) avg(列名) count(任意列名)
8. 排序、分页分组去重
排序: order by 列名 排序方式 asc升序、desc降序 分页 limit n显示前n个 limit m, n从索引m开始显示n个 分组 group by 针对查询结果分组 select count(*), 列名 from 表名 where 条件 having 针对分组结果进行处理 having 列名条件 去重 distinct(列名)去重某一列
9.嵌套查询内连接左外连接右外连接全连接
嵌套查询一个查询的结果作为另一个查询的内容 内连接inner join on 连接条件 左外连接内连接结果左表内容右侧补null 右外连接内连接结果右表内容左侧补null 全连接左外连接 union 右外连接
10. 用户创建授权删除
查看当前用户select user() 创建用户create user temp1% identified by 123456; 分配权限grant all on *.* to temp1%; grant select , insert on mydb. * to temp2%; 删除用户drop user temp2% 刷新权限flush privileges;
11.视图
一张虚拟表修改表等同于操作真实数据方便查询 创建视图不要求写SQL使用navical工具创建 使用视图等同于使用表
12.函数与存储过程
都是存储在服务器上可以提升数据安全客户端不需要关注具体实现 函数经过计算返回一个结果需要指定一个形参指定返回值 select 函数名(实参) 存储过程一套SQL操作没有返回值 call 过程名(实参)
13. 索引
索引一种查询优化技术可以提升查询效率实现的本质是要预先存储一些额外数据牺牲存储空间提升查询效率 索引类型 主键索引、唯一索引、普通索引 何时定义索引 索引不是创建越多越好如果表的修改频率非常高不适合创建索引 如果表的查询效率非常高几乎不修改适合创建索引 索引方法 BTREE大数据量适合范围比较 HASH适合小数据量适合精准的等值比较
14. 事务
MySQl存储引擎innoDB支持事务MySQl数据库中对应的一系列操作要么全部执行成功然后提交要么全部失败然后回滚 成功commit 失败rollback mysql终端默认自动提交 取消自动提交set autocommit 0; 设置自动提交set autocommit 1; 事务相关 开启事务start transaction; 默认不会自动提交 结束事务commit;提交成功 rollback; 失败回滚 ACID原则 原子性不可再分全部成功或全部失败 一致性执行前后数据要保持一致 隔离性多个事务相互不影响 持久性一旦提交则执行完毕永久改变
15.存储引擎
create table 表名() engine引擎名 create table myisam_table(id int not null primary key auto_increment, name varchar(30)) enginemyisam; 数据的存储的实现不同存储引擎不同场景 常用 InnoDB 支持事务 支持外键 支持行级别锁定阻塞 综合能力强适用大多数场景 默认存储引擎 使用后缀为ibd文件存储内容 MyISAM 查询排序速度非常快不支持外键 Memory 读取内存速度最快不能持久化不能在本地保存 CSV 使用逗号隔开适合导入导出操作
16.数据库的备份与恢复
备份将数据库信息转储为SQL文件、手动创建数据库 恢复运行SQL文件在目录中找到myk.sql文件打开
17.Mysql与Python基础交互
1.导入模块 2.连接数据库 3.构建游标 4.通过游标执行sql语句 5.处理sql结果 6.释放连接与游标
18.Fetchone fetchall fetchmany scroll execute executemany 方法使用
fetchone:获取表中一条数据 fetchall:获取表中所有数据 fetchmany:获取表中自定义数据 scroll:在结果集中移动游标允许你在结果集中向前或向后滚动以便访问不同的行。 execute:用于执行单个SQL查询或操作并且通常用于执行增删改查操作 executemany:用于执行批量的SQL操作批量插入多行数据。
19.Mysql辅助类封装
方便地进行数据库操作提高代码复用性和可维护性