目录

        • 数据库基本操作
        • 库的增删改
        • 表的增删改
        • 操作表中的内容
        • 创建表的完整语法
        • 修改表
        • 复制表(了解)
        • Mysql主要存储引擎
        • 基本数据类型
        • 严格模式
        • 约束条件
            • default 默认值
            • unique唯一
            • primary key主键
            • auto_increment自增
        • 表与表之间建关系
            • 外键
            • 一对多关系
            • 多对多关系
            • 一对一
            • 总结
        • 查询表
            • 前期表准备
            • 几个重要关键字的执行顺序
            • where筛选条件
            • group by 分组
            • 分组注意事项
            • having 分组之后的筛选
            • distinct去重
            • order by 排序
            • limit限制展示条数
            • 正则
            • 多表查询
            • 子查询
            • 总结
        • Navicat软件
        • pymysql模块
        • sql注入问题
        • pymysql模块增删改查数据操作
        • 视图(了解)
        • 触发器(了解)
        • 事务(需要掌握)
        • 存储过程(了解)
        • 在pymysql中调用存储过程
        • 内置函数(了解)
        • 流程控制(了解)
        • 索引理论(了解)

数据库基本操作

创建用户:create user 'khw'@'192.168.1.1' identified by '123123'create user 'khw'@'%' identified by '123123';# %号匹配所有
授权:创建权限grant select,insert,update   on db1.* to 'khw'@'%'grant all privileges on  mysql.* to 'khw'@'%'privileges:(表示拥有所有权限) db1.*:(表示这个数据库里面的所有表)to 'khw'@'%':表示把这个权限给khw这个用户查看:use mysql;select user,host from user #查看user这个表里的user,host两列设置密码:mysqladmin -uroot -p 原密码 password 新密码该命令在终端输入即可,无须进入客户端破解密码:可以将mysql获取用户名和密码校验的功能看出一个装饰器装饰在了客户端请求访问的功能上,将装饰器溢出就可以不校验用户名密码了1、先关闭当前mysql服务端#命令行的方式启动(让mysql跳过用户密码验证功能)mysql --skip-grant-tables;2、直接以无密码的方式连接mysql -uroot -p;3、修改当前用户的密码update mysql.user set password=password(123456) where user='root' and host='localhost';"""真正存储用户表的密码字段,肯定是密文"""4、立刻将修改数据刷到硬盘flush privileges;

库的增删改

增:create database db2 default charset=utf8; 创建数据库
查:show databases;	查看数据库show create database db1;  查看单个
删:drop database db2; 删除数据库
改:alter database db2 charset='utf-8'; 修改

表的增删改

查看当前所在库的名字select database();进入数据库:use db2;	增:create table t1(id int,name char(10)) default charset=utf8;  # 创建表第一列名称为id int类型,第二列名称为name char类型,最多存10个字符查:show tables;		# 查看当前库下面的所有表名show create table t1;  # 查看单一表describe t1;		# 支持简写 desc t1;改:alter table t1 modify name char(16); # 将char的最大字符改为16删:drop table t1;

操作表中的内容

查:select * from t1;	select name from t1;	# 查name这一列的数据增:insert into t1 values(1,'jason');insert into t1 values(1,'jason'),(2,'egon'),(3,'tank');改:update t1 set age=18  	# set表示设置,将age这一列都改为18update t1 set age=18 where age=17  # 将age这一列里17改为18,where为限制条件删delete from t1 where id>6	# 将t1这张表里id大于6的都删掉delete from t1 where name='json'将表所有的数据清空:delete from t1;

创建表的完整语法

# 语法
create table 表名(字段名1 类型(宽度) 约束条件,字段名2 类型(宽度) 约束条件,字段名3 类型(宽度) 约束条件,
)# 注意
1、在同一张表中字段名不能重复
2、宽度和约束条件是可选的,而字段名和类型是必选的
3、约束条件可以支持写多个create table t1(字段名1 类型(宽度) 约束条件1 约束条件2 ....)4、最后一行不能有逗号create table t1(id int,name char, # 报错);	"""补充"""
# 宽度一半情况下指的是对存储数据的限制create table t1(name char); 默认宽度是1insert into t1 values('jason')  # 应为宽度唯一,所以这次插入只能插进jinsert into t1 values(null);  # 关键字NULL,插入关键字null# 约束条件 null	, not null
create table t1(id int, name char not null)  #不能插入null# 宽度和约束条件的关系宽度是来限制数据的存储约束条件是在宽度的基础之上增加额外的约束

修改表

# MySQL 对大小写是不敏感的
"""
1、修改表名alter table 表名 rename 新表明;2、增加字段alter table 表明 add 字段名 字段类型(宽度) 约束条件;  默认是在尾部alter table 表明 add 字段名 字段类型(宽度) 约束条件 first; 将字段添加到表的最前面alter table 表明 add 字段名 字段类型(宽度) 约束条件 after 字段名;  更在谁的后面3、删除字段alter table 表名 drop 字段名;4、修改字段alter table 表名 modify 字段名 字段类型(宽度) 约束条件;alter table 表名 change 旧字段名 新字段名(宽度) 约束条件;"""

复制表(了解)

# sql语句的结果其实也是一张虚拟表
"""
create table 新表名 select * from 旧表;  不能复制主键 外键
"""

Mysql主要存储引擎

日常生活中文件格式有很多,并且针对不同的文件格式有对应不同存储方式和处理机制
针对不同的数据应该有对应不同的处理机制来存储
存储引擎就是不同的处理机制innodb:是Mysql5.5版本之后默认的存储引擎存储数据更加的安全# 文件个数两个,frm 表结构,ibd 表数据
myisam:是Mysql5.5版本之前默认存储引擎速度要比innodb更快 但我们更加注重的是数据的安全# 文件个数三个,frm 表结构,myd 表数据, Myl 索引
memory:内存引擎,数据放在内存中,断电丢失# 文件个数一个,frm 表结构,数据都在内存追踪
blackhole:无论存什么,都立刻消失# 文件个数一个,frm 表结构"""
# 查看所有的存储引擎
show engines;"""

基本数据类型

整形1、分类:tinyint smallint meduimint int gifint2、作用:存储年龄、等级、id、号码等等3、详细介绍: 图片链接
"""
# 针对整型 括号内的宽度有啥用
只有整型括号里的数字不是表示限制位数
id int(8)如果数字没有超出8魏,默认用空格填充至8位如果数字超出了8位,有几位存几位(但还是要遵守最大范围)总结:针对整型字段 括号内无须指定宽度,应为他的默认宽度足够存常见数据了"""浮点型1、分类FLOAT、DOUBLE、DECIMAL2、作用身高、体重、薪资3、存储限制float(255,30)	# 总共255位,小数部分30位double(255,30)	# 总共255位,小数部分30位decimal(65,30)	# 总共65位,小数部分30位4、精确度float < double < decimal事件类型1、分类date 年月日datetime 年月日 时分秒time	时分秒year	年份枚举与集合类型1、分类枚举(enum)	多选一集合(set)		多选多2、作用:"""create table user(id int,name char(16),gender enum('male','female'));insert into user values(1,'jason','male'); 正常insert into user values(2,'egon','xo'); 报错# 枚举字段 后期在存储数据的时候只能从枚举里面选择一个存储""""""create table user(id int,name char(16),gender enum('male','female')hobby set('read','dbj','hecha'));insert into teacher values(1,'jason','read');	正常insert into teacher values(2,'egon','female','dbj,hecha');	正常insert into teacher values(3,'tank','others','生蚝');  报错# 结合可以只写一个或多个,但是不能写没有列举的"""

严格模式

# 如何查看严格模式
show variabels like "%mode"
模糊匹配/查询关键字 like%:匹配任意多个字符-:匹配任意单个字符# 修改严格模式set session 只在当前窗口有效set global	全局有效set global sql_mode = "STRICT_TRANS_TABLES";修改完之后重新进入服务端即可

约束条件

default 默认值
default 默认值# 补充知识点 插入数据的时候可以指定字段create table t1(id int,name char(16));insert into t1(name,id) values('jason',1);create table t2(id int,name char(16),gender enum('male','female','others') default 'male');# default 表示不填默认位maleinsert into t2(id,name) values(1,'jason');insert into t2 values(2,'egon','female');
unique唯一
unique唯一# 单列唯一,一般位于id这一列create table t3(id int unique,name char(16));insert into t3 values(1,'jason'),(1,'egon');insert into t3 values(1,'jason'),(2,'egon')# 联合唯一,例如ip和端口,单个可以重复,但是加载一起必须是唯一的create table t4(id int unique,ip char(16)port int,unique(ip,port));insert into t4 values(1,'127.0.0.1',8080);insert into t4 values(2,'127.0.0.1',8080);insert into t4 values(2,'127.0.0.1',8080); #这条报错
primary key主键
primary key主键
# 1、从约束效果上看 primary key 等价于not null+unique,非空且唯一create table t5(id int primary key);intsert into t5 values(null);   报错intsert into t5 values(1),(1);  报错intsert into t5 values(1),(2);
# 2、他除了有约束效果之外,他还是innodb存储引擎组织数据的依据,innodb存储引擎在创建表的时候必须要有primary key,应为他类似与书的目录 能够帮助提示查询效率 并且也是建表的依据"""1、一张表中有且只有一个主键 如果没有设置主键,会从上往下搜索,知道遇到一个非空且唯一的字段 将他自动升级为主键create table t6(id int ,name char(16),age int not null unique,addr char(32) not null unique);2、如果表中没有主键也没有其他非空唯一字段 南无innodb会采用自己内部提供的一个隐藏字段为主键,隐藏意味着你无法使用,无法提升查询速度3、一张表中通常由一个主键字段,并且通常将id/uid/sid字段作为主键单个字段主键create table t5(id int primary key,name char(16));联合主键(多个字段联合起来作为表的主键,本质还是一个主键)create table t4(id int unique,ip char(16)port int,primary key(ip,port));"""
所以我们在创建表的时候id字段一定要加primary key
auto_increment自增
# 当编号太多,人为维护麻烦,可以使用此主键
create table t8(id int primary key auto_increment,	#id字段可以自增,并且非空且唯一name char(16)
)
insert into t8(name) values('json'),('egon'),('kevin');总结:以后再创建表的id(数据的唯一标识id、uid、sid)字段的时候id int primary key auto_increment
补充:delete from 再删除表中数据的时候,主键的自增不会停止truncate t1 清空表数据并重置主键

表与表之间建关系

外键
外键是用来帮助我们建立表与表之间的关系
foreign key
一对多关系
"""
员工表与部门表为例一个员工能否对应多个部门不能一个部门能否对应多个员工能得出结论员工表与部门表 是单向的一对多所以表关系就是一对多
"""foreign key1、一对多表关系,外键字段写在多的一方2、再创建表的时候,一定要先建被关联表3、再录入数据的时候,也必须先录入被关联表# 部门表
create table dep(id int primary key auto_increment,dep_name char(16),dep_desc char(32)
);
# 员工表
create table emp(id int primary key auto_increment,name char(16),gender enum('male','female','oyhers') default 'male',dep_id int,foreign key(dep_id) references dep(id)
)insert into dep(dep_name,dep_desc) values('sb教学部','教书育人'),values('外交部','人多外交');
insert into emp(name,dep_id) values('jason',2),values('egon',1);# 级联操作:# 1、修改dep表里面的id字段update dep set id=200 where id=2;  不行# 2、删除dep表里面的数据delete from dep; 不行 # 3、删除教学部门对应的员工数据,之后再删除部门操作繁琐# 4、真正做到数据之间的关系更新就同步跟新,级联更新删除就同步删除,级联删除create table emp(id int primary key auto_increment,name char(16),gender enum('male','female','oyhers') default 'male',dep_id int,foreign key(dep_id) references dep(id),on update cascade,	# 同步更新on delete cascade	# 同步删除)
insert into dep(dep_name,dep_desc) values('sb教学部','教书育人'),values('外交部','人多外交');
insert into emp(name,dep_id) values('jason',2),values('egon',1);
多对多关系
"""
图书表和作者表为例一本书可以对应多个作者可以一个作者对应多本书可以所以推出为多对多关系两张表都有外键字段
"""
create table book(id int primary key auto_increment,title varchar(32),price int,author_id int,foreign key(author_id) references author(id),on update cascade,	# 同步更新on delete cascade	# 同步删除
);create table author(id int primary key auto_increment,name varchar(32),age int,book_id int,foreign key(book_id) references book(id),on update cascade,	# 同步更新on delete cascade	# 同步删除
);
"""
foreign key1、一对多表关系,外键字段写在多的一方2、再创建表的时候,一定要先建被关联表3、再录入数据的时候,也必须先录入被关联表
按照上述的方式创建一个都别想成功
其实我们只是想记录书籍和作者的关系
针对多对多字段表关系,不能在两张表原有的表中创建外键
需专门建立一张表,来存放外键
"""
create table book(id int primary key auto_increment,title varchar(32),price int
);create table author(id int primary key auto_increment,name varchar(32),age int
);
create table book2author(id int primary key auto_increment,author_id int,book_id int,foreign key(author_id) references author(id),on update cascade,	# 同步更新on delete cascade,	# 同步删除foreign key(book_id) references book(id),on update cascade,	# 同步更新on delete cascade	# 同步删除
);
一对一
"""
id name age addr phone hobby .....
如果一个表的字段特别多,每次查询又不是所有字段都能用得到
将表一分为二用户表id name age用户详情表id addr phone bobby email...站在用户表一个用户能否对应多个用户详情 不能站在详情表一个详情能否属于多个用户 不能结论:这种就属于一对一或者没有关系
"""
一对一外键字段建在任意一方都可以,但建议建在查询频率较高的表中
create table authordetail(id int primary key auth_increment,phone int,addr varchar()
);
create table author(id int primary key auth_increment,name varchar(32)age int,authordetail_id int unique,foreign key(authordetail_id) referemces aithordetail(id),on update cascade,	# 同步更新on delete cascade	# 同步删除
);
总结
"""
表关系建立需要用到 foreign key一对多外键字段建在多的一方多对多自己开设第三方存储一对一建在任意一方都可以 但是推荐建在查询频率较高的表中
判断表之间关系的方式换位思考!员工与部门图书与作者作者与作者详情
"""

查询表

前期表准备

"""
create table emp(id int not null unique auto_increment,name varchar(20) not null,sex enum('male','female') not null default 'male'	#大部分是男的age int(3) unsigned not null default 28,hire_date date not null,post varchar(50),post_comment varchar(100),salary double(15,2),office int,	#一个部门一个屋子depart_id int
);# 插入记录
# 三个部门 教学,销售,运营
insert into 
emp(name,sex,age,hire_Date,post,salary,office,depart_id) values
('jason','male',78,'20150302','张江第一帅形象代言',7300,22,421,1), #以下是教学部
('top','male',28,'20150302','teacher',100000,33,421,1),
('owem','male',38,'20050302','teacher',8300,13,421,1),
('top','male',48,'20150302','teacher',9500,63,421,1),	
('哈哈','male',58,'20150302','sale',6500,53,421,1),	#以下是销售部
('呵呵','male',68,'20150302','sale',5500,63,421,1),
('憎龙','male',78,'20150302','sale',4500,73,421,1),	#以下是运营部
('程咬铁','male',88,'20150302','sale',3500,93,421,1);
"""
几个重要关键字的执行顺序
# 书写顺序
select id,name from emp where id > 3;#执行顺序
from
where
select"""
可以按照书写顺序的方式写sqlselect * 先用*占位之后补全后面的sql语句最后将*号替换成想要的字段
"""
where筛选条件
# 作用:是对整体数据的一个筛选操作
1、查询id大于等于3小于等于6的数据
select id,name,age from emp where id>=3 and id<=6;
select id,nam,age from emp where id betwenn 3 and 6; 两者等价2、查询薪资是20000或者18000或者17000的数据
slect * from emp where salary=2000 or salary=18000 or salary=17000;
select * from emp where salary in (2000,18000,17000);3、查询员工姓名中包含字母o的员工姓名和薪资
"""
模糊查询like %匹配任意多个字符_匹配任意单个字符
"""
select name,salary from emp where name like '%o%';4、查询员工姓名是由四个字符组成的姓名和薪资
select name,salary from emp where name like '____';
select name,salary from emp where char_length(name) = 4;5、查询id小于3或者大于5的
select * from emp where id not between 3 and 66、查询薪资不在20000,18000,17000范围的数据
select * from emp where salary not int (20000,18000,17000);7、查询岗位描述为空的员工和岗位名,针对null 不用等号用is
select name,post from emp where post_comment = NULL;
select name,post from emp where post_comment is NULL;
group by 分组
场景:男女比例部门平均薪资部门秃头率国家之间数据统计分组语法:select * from emp group by post;聚合函数:maxavgsumcountps: 分组之后,最小可操作单位是组,而不是单个数据,上述命令在非严格模式下可以执行,返回的是分组之后每个组的第一条数据 ,但这个不符合分组规范,分组之后不应该考虑单个数据,而应该以组为操作单位(分组之后 没办法直接获取组内的单个数据)
严格模式:	set global sql_mode = 'strict_trans_tables,only_full_group_by';1、获取每个部门的最高薪资select post,max(salary) from emp group by post;select post as '部门',max(salary) as '最高薪资' from emp group by post;ps: as可以给字段起别名2、获取每个部门的最低薪资select post,min(salary) from emp group by post;3、获取每个部门的最高薪资select post,avg(salary) from emp group by post;4、获取每个部门的薪资综合select post,sum(salary) from emp group by post;5、获取每个部门的人数select post,count(id) from emp group by post;	# 常用select post,count(salary) from emp group by post;select post,count(age) from emp group by post;select post,count(post_comment) from emp group by post;	 # null不行6、查询分组之后的部门名称和每个部门下所有的员工姓名# group_concat 不单单可以支持你获取分组之后的其他字段,还支持拼接操作select  post,group_concat(name) from emp group by post;select  post,group_concat(name,'_DSB') from emp group by post;select  post,group_concat(name,':',salary) from emp group by post;# concat 不分组的时候使用select concat('NAME:',name),concat('SAL:',salary) from emp;7、查询每个人的年薪 12薪select name,salary*12 from emp;补充: as语法不仅能给字段起别名,还可以给表零时起别名select emp.id,emp.id from emp ;select emp.id,emp.id from emp as t1; 报错select t1.id,t1.id from emp as t1;
分组注意事项
1、关键字where和group by同时出现的时候group by必须在where的后面where先对整体数据进行过滤之后再分组操作2、where 筛选条件不能使用筛选条件3、聚合函数只能在分组之后使用select id,name,age from emp where max(salary) > 3000;	报错select max(salary) from emp;	# 不分组默认整体就是一组# 题目: 统计各部门年龄在30岁以上的员工平均薪资1、先求所有年龄大于30岁的员工select * from emp where age>30;2、在对结果进行分组select * from emp where age>30 group by post;3、最终结果select post,avg(salary) from emp where age>30 group by post;
having 分组之后的筛选
"""
having的语法和where是一致的,只不过having是在分组之后进行的过滤操作
即having是可以直接使用聚合函数的
聚合函数:max,avg,sum,count
"""# 题目: 统计各部门年龄在30岁以上的员工工资,并且保留平均工资大于10000的部门
select post,avg(salary) from emp where age>30 group by post having avg(salary) >10000;
distinct去重
"""
一定注意 必须是完全一样的数据才可以去重
一定不要将主键忽视,有主键存在的情况下是不能去重,因为主键都是不同的
[
{'id':1,'name':'jason','age':18},
{'id':2,'name':'jason','age':18},
{'id':3,'name':'egon','age':18}
]
"""# 这一行有主键,无法去重
select distinct id,age from emp;# 这一行无主键,可以去重
select distinct age from emp;
order by 排序
select * from emp order by salary;
select * from emp order by salary asc;
select * from emp order by salary dasc;
"""
order by 默认是升序 asc 该asc可以省略不写
也可以修改为降序	desc
"""
select * from emp order by age desc,salary asc;
# 先按照age降序排  如果碰到age相同,则按照salary升序排,后面还可以再跟# 题目: 统计各部门年龄再10岁以上的员工平均工资,并且保留平均工资大于1000的部门,然后对平均工资降序排序select post,avg(salary) from emp where age>30 group by post having avg(salary) >10000order by avg(salary) desc;
limit限制展示条数

select * from emp;	
"""当数据量多的时候容易造成卡死现象"""
select * from emp limit 3	# 只展示三条数据select * from emp limit 0,5;	#从0的位置往后取5条select * from emp limit 5,5;	#从5的位置往后取5条1、第一个参数是起始位置
2、第二个参数是条数
正则
select * from emp where name regexp '^j.*(n|y)$';
j开头,n或者y结尾,*代表所有
多表查询
select * from dep,emp;	# 结果 笛卡尔积select * from emp,dep where emp.dep_id = dep.id;"""
Mysql正对拼表操作专门开设了对应的方法inner join 	内连接left join 	左连接right join 	右连接union 		全连接
"""# inner join 内连接
# 只拼接两张表中共有的数据
select * from emp inner join dep on emp.dep_id = dep.id;# left join 左连接
# 左表所有的数据都展示出来,没有对应的项就用NULL
select * from emp left join dep on emp.dep_id = dep.id;# right join 右连接
# 右表所有的数据都展示出来,没有对应的项就用NULL
select * from emp right join dep on emp.dep_id = dep.id;# union 全连接
# 左右两张表的所有数据都展示出来
select * from emp left join dep on emp.dep_id = dep.id
union
select * from emp right join dep on emp.dep_id = dep.id;
子查询
"""
子查询就是我们平时解决问题的思路分步骤解决问题第一步第二部...
将一个查询语句的结果当作另一个查询语句的条件使用
"""# 题目:查询部门是技术或者人力资源的员工信息1、获取部门的id号2、再去员工表里面筛选出对应的员工select id from dep where name='技术' or name='人力资源';select name from emp where dep_id in (200,201);select * from emp where dep_id in (select id from dep where name='技术' or name='人力资源');
总结
表的查询结果可以作为其他表的查询条件
也可以通过起别名的方式把他作为一张虚拟表跟其他表关联# 查询平均年龄再25岁以上的部门名称
"""只要是多表查询就有两种思路  连表,子查询"""
# 连表操作1、先拿到部门和员工表 拼接之后的结果2、分析语义 得出需要进行分组select dep.name from emp inner join depon emp.dep_id = dep.idgroup by dep.namehaving avg(age) > 25;"""涉及到多表操作的时候,一定要加上表的前缀"""# 子查询select name from dep where id in(select dep_id from emp group by dep_idhaving avg(age)>25);# 关键字 exist(了解)只返回布尔值 True False返回True的时候外层查询语句执行返回False的时候外层查询语句不再执行select * from emp where exists (select id from dep where id>3);

Navicat软件

1、MySQ是不区分大小写的验证码忽略大小写内部统一转大写或者小写比较即可upperlower2、MySQL建议所有的关键字大写3、MySQL中的注释有两种--#
4、再navicat中如何快速注释和解注释ctrl + ?	加注释ctrl + ?	基于以上操作再来一次解注释ctrl + shift + ? 老版本解开注释

pymysql模块

"""
支持python代码操作数据库MySQL
"""import pymysqlconn = pymysql.connect(host="127.0.0.1",port=3306,user='root',password='Huawei12#$',database='goods_management',
)  # 连接数据库cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)  # 产生一个游标对象(就是用来执行命令的)sql = 'select * from client;'
res = cursor.execute(sql)
print(res)  # execute 返回当前sql语句影响的行数print(cursor.fetchone())  # 只拿一条
print(cursor.fetchall())  # 拿所有
print(cursor.fetchmany(2))  # 指定拿2条# 读取数据类似于文件光标的移动
cursor.scroll(1, 'relative')  # 相对于光标所在位置继续往后移动一位
cursor.scroll(1, 'absolute')  # 相对于数据的开头往后移动一位

sql注入问题

"""
利用语法的特性,书写一些特点的语句实现固定的语法
利用MySQL的注释语法
"""
select * from passwd where name='asd' or 1=1 -- asdasd' and password=''日常生活中很多软件在注册的时候都不含有特殊符号
因为容易构造出特定的语句入侵数据库 不安全# 敏感的数据不要自己做拼接,交给execute方法即可
rows = cursor.execute(sql,(username,password))例子:import pymysqlconn = pymysql.connect(host="127.0.0.1",port=3306,user='root',password='Huawei12#$',database='goods_management',
)  # 连接数据库cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)  # 产生一个游标对象(就是用来执行命令的)username = input('>>>:')
password = input('>>>:')sql = "select * from passwd where name=%s and password=%s"# 不要手动拼接数据 先%s占位,之后将需要凭借的数据交给execute方法即可
rows = cursor.execute(sql,(username,password))  # 自动识别sql里面的%s用后面的元组里面的数据替换
print(sql)
if rows:print('登陆成功')print(cursor.fetchall())
else:print('登录失败')

pymysql模块增删改查数据操作

import pymysqlconn = pymysql.connect(host="127.0.0.1",port=3306,user='root',password='Huawei12#$',database='goods_management',# autocommit=True
)cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)  # 产生一个游标对象(就是用来执行命令的)# 增
sql = 'insert into passwd(name,password) values(%s,%s)'
# rows = cursor.execute(sql,('admin',123))
rows = cursor.executemany(sql,[('xxx',123),('ooo',123)])    #以下增加2条
print(rows)
conn.commit()   # 确认# 修改
sql = 'update passwd set name="hwnb" where id=2'
rows = cursor.execute(sql,)
print(rows)
conn.commit()# 删
sql = 'delete from passwd where id=2'
rows = cursor.execute(sql,)
print(rows)
conn.commit()# 查
sql = 'select * from passwd'
cursor.execute(sql)
print(cursor.fetchall())"""
增删改查中增 删 改 他们的操作涉及到数据的修改需要二次确认# conn.commit()   # 确认如果再上面加上autocommit=True后续则不需要确认
"""1、增删改需要二次确认才能操作
2、批量增 
rows = cursor.executemany(sql,[('xxx',123),('ooo',123)]) 

视图(了解)

1、什么是视图视图就是哦通过查询得到一张虚拟表,保存下来,下次直接使用视图也是表2、为什么要用频繁操作一张虚拟表,这样就可以做成视图,后续直接操作3、怎么用固定语法create view 视图名 as 虚拟表的查询sql语句4、使用频率不高当创建很多视图之后,会造成表的不好维护注意:1、视图再硬盘上只有表结构,没有数据(数据还是来自于之前的表)2、视图只用来查询 里面的数据不要修改,可能会影响到真正的表

触发器(了解)

是什么:再满足对表数据进行增、删、改的情况下,自动触发的功能有啥用:可以帮助我们实现监控、日志...语法结构:触发器可以再六种情况自动触发增前,增后,删前,删后,改前,改后create trigger 触发器的名字 before/after insert/update on 表名 for each rowbeginsql语句endps:修改MySQL默认的语句结束符,只作用于当前窗口delimiter $$  将默认的结束符号由;改为$$# 案例
CREATE TABLE cmd(id int primary key auto_increment,user char(32),priv char(10),cmd char(64),sub_time datetime,	# 提交事件success enum('yes','no') # no代表执行失败
);create table errlog(id int primary key auto_increment,err_cmd char(64),err_time datetime
);"""
当cmd表中的记录succes字段是no那么触发触发器的执行取errlog表中插入数据
NEW指代的是一条条数据对象
"""delimiter $$
create trigger tri_after_insert_cmd after insert on cmd 
for each row
beginif NEW.success = 'no' theninsert into errlog(err_cmd,err_time)
values(NEW.cmd,NEW.sub_time);end if;
end $$
delimiter;# 删除触发器
drop trigger tri_after_insert_cmd

事务(需要掌握)

是什么:开启一个事务可以包含多条sql语句 这些sql语句要么同时成功要么一个都别想成功作用:保证了对数据操作的安全性事务的四大特性:ACIDA:原子性一个事务是不可分割的单位,事务中包含这诸多操作要么同时成功要摸同时失败C:一致性事务必须是使数据库从一个一致性状态变到另一个一致性状态一致性跟原子性密切相关I:隔离性一个事务的执行不能为其他事务干扰D:持久性也叫"永久性"一个事务一旦提交成功执行成功 那么他是将数据刷到硬盘中的,不会丢数据如何使用:1、开启事务start transaction;2、回滚(回到事务发生之前的状态)rollback;3、确认(确认之后就无法回滚)commit;"""模拟转账功能"""create table user(id int primary key auto_increment,name char(16),balance int
);
insert into user(name,blance) values
('jason',1000),
('egon',1000),
('tank',1000);#1、先开启事务
start transaction;#2、多条sql语句
update user set balance=900 where name = 'jason';
update user set balance=1010 where name='egon';
update user set balance=1090 where name='tank';#3、回滚
rollback;#4、确认
commit;总结:当你想让sql语句保持一致性的时候可以使用事务

存储过程(了解)

是什么类似于python中的自定义函数它的内部包含了一系列可以执行的sql语句,存储过程放于MySQL服务端中,可以直接通过存储过程触发内部sql语句执行怎么用固定语法create procedure 存储过程的名字(形参1,形参2,....)beginsql代码endps:修改MySQL默认的语句结束符,只作用于当前窗口delimiter $$  将默认的结束符号由;改为$$# 调用call 存储过程的名字三种开发模型1、第一种应用程序:程序员写代码开发MySQL:提前编写好存储过程,供应用程序调用优点:提升开发效率缺点:考虑到认为因素,跨部门沟通问题,后续的存储过程扩展性差2、第二种应用程序:程序员写代码开发之外,涉及到数据库操作也自己写优点:扩展性高缺点:开发效率低,编写sql语句太过繁琐,而且后续还要考虑sql优化问题3、第三种应用程序:只写程序代码,不写sql语句,基于别人写好的操作MySQL的python框架直接操作即可	ORM框架优点:开发效率比上面两种情况都高缺点:语句的扩展性差,可能会出现效率低下的问题4、总结第一种基本不用,一般都是第三种"""存储过程具体演示"""delimiter $$create procedure p1(in m int,	# 只进不出 m不返回出去in n int,out res int, #该形参可以返回出去)beginselect tname from teacher where tid>m and tid<n;set tes=0;	#将res变量修改,用来标识当前存储代码执行end $$delimiter ;# 正对形参res 不能直接传数据,应该传一个变量
# 定义变量set @res = 10;
# 查看变量select @res;
# 调用call p1(1,5,@res)

在pymysql中调用存储过程

import pymysqlconn = pymysql.connect(host="127.0.0.1",port=3306,user='root',password='Huawei12#$',database='goods_management',# autocommit=True
)cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)  # 产生一个游标对象(就是用来执行命令的)# 调用存储过程
cursor.callproc('p1',(1,5,10))
"""
@_p1_0 = 1
@_p1_1 = 5
@_p1_2 = 10
"""
print(cursor.fetchall())

内置函数(了解)

跟存储过程的区别:存储过程是自定义函数,函数类似于内置函数

流程控制(了解)

# if判断delimiter //create procedure proc_if()begindeclare i int default 0;if i = 1 thenselect 1;elseif i = 2 thenselect 2;elseselect 7;end if;end //delimiter ;
# while 循环delimiter //create procedure proc_while()begindeclare num int ;set num = 0;while num < 0 doselectnum;set num = num + 1;end while;

索引理论(了解)

是什么数据都是存在硬盘上,我们需要通过索引来找到数据类似于书的目录优点:可以通过查询速度降低io操作索引在MySQL中也叫做'键',是存储引擎用于快速查找记录的一种数据结构1、primary key2、unique key3、index keyps:foreign key 不是加速查询用的,不在研究范围内上面三种key,前面两种除了增加查询速度之外各自还有约束条件最后一种index key没有任何的约束条件,只是用来帮助快速查询速度本质通过不断缩小想要的数据范围,筛选出最终的结果,同时将随机事件变成顺序事件也就是有了索引顺序,我们总可以通过一种固定的方式找到数据一张表中可以有多个索引缺点:1、当表中有大量数据存在的前提下,创建索引速度慢2、在索引创建完毕之后,写的性能会降低(当插入数据的时候索引需要拆掉重新创)3、索引不要随意的创建聚集索引 primary key聚集索引指的就是主键innodb 只有两个文件 直接将主键存放在了idb表中Myisam	三个文件,单独将索引存放在一个文件辅助索引 unique index查询数据的时候不可能一直使用到主键,也可能会用到name,password等其他字段这个时候无法用聚集索引,这个时候可以设置辅助索引也是个b+树覆盖索引 在辅助索引的叶子节点上就已经拿到了需要的数据
查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 977.有序数组的平方

    标题977.有序数组的平方 题目描述 题目链接 方法1&#xff1a;暴力解题 #pragma once #include <iostream> #include<vector> #include<algorithm> using namespace std;//方法1&#xff1a;思路-将容器中的数平方后直接排序 class Solution { public:v…...

    2024/3/6 10:14:44
  2. 关于MongoDB安全事件的一些思考

    刚刚过去的这个周末&#xff0c;各位大数据和数据库从业者想必是被MongoDB的“安全事件”给刷屏了&#xff0c;MongoDB作为当前NoSQL在全球的领军人物&#xff0c;遭到这么大规模的黑客攻击&#xff0c;这也再次让我们对于新一代的开源数据库的数据安全问题产生了思考。而作为国…...

    2024/3/17 17:00:59
  3. 升职加薪:从自动化测试的理论整起来。

    好久不见。 由于快到我该调薪的月份&#xff0c;所以&#xff0c;我们组长在不久前找我谈话&#xff0c;并指出我的一个问题——在职场上的可见度较低&#xff0c;要让老板“看见”我。 图片 之前&#xff0c;组长给我争取机会在老板面前演示自动化测试&#xff0c;我不敢&a…...

    2024/3/6 10:14:43
  4. MT4软件如何使用

    MT4是大多数投资者使用的交易软件。 那么新手投资者如何使用MT4呢&#xff0c;今天来讲解一下。 首先要下载和安装好MT4。下载MT4跟下载其他软件的方法是相同的&#xff0c;所有版本都是可以在 mt4。yhtz。cc 下载的。 下载后安装就好&#xff0c;和普通的一些软件是没有什么…...

    2024/3/6 10:14:41
  5. AMiner推荐论文:Artificial intelligence reveals nuclear pore complexity

    论文链接&#xff1a;https://www.aminer.cn/pub/618373386750f81fdc1b1141?fcs 细胞核是否具有核膜&#xff0c;是区分真核生物与原核生物的关键。核膜将核内遗传物质与细胞质及其他细胞结构分离开来&#xff0c;使细胞核成为细胞运行的「司令部」。司令部派出的「传令兵」信…...

    2024/3/21 22:18:03
  6. 00后的Java基础惊呆面试官,网友:太卷了

    今年的秋招基本已经进入大规模的开奖季了&#xff0c;很多小伙伴收获不错&#xff0c;拿到了心仪的offer。 各大论坛和社区里也看见不少小伙伴慷慨地分享了常见的面试题和八股文&#xff0c;为此咱这里也统一做一次大整理和大归类&#xff0c;这也算是划重点了。 俗话说得好&…...

    2024/3/6 10:14:39
  7. KMP算法next数组求法,c语言版

    KMP的next数组求法详解理论基础部分匹配表的生成PMT值的生成next数组的生成代码实现在网上有很多kmp算法的讲解&#xff0c;大概的框架讲的都还不错&#xff0c;但在next数组的讲解上&#xff0c;我觉得不是很清晰。在学习KMP算法时&#xff0c;next数组的求解是它的精髓。在博…...

    2024/3/15 22:39:48
  8. 别再写满屏的 get set 了,太 Low,试试 MapStruct 高级玩法

    别再写满屏的 get-set 了&#xff0c;太 Low&#xff01;MapStruct 高级玩法&#xff0c;这篇栈长带你上正道&#xff01; 1、自定义映射 当我们映射 DTO 的时候&#xff0c;如果某些参数的值 MapStruct 的映射配置不能满足要求&#xff0c;可以使用自定义方法。 新增两个 DT…...

    2024/3/16 0:09:13
  9. 《面试八股文》之 Spring 18卷

    「《面试八股文》之 Spring 18卷」 又新鲜出炉了&#xff0c;这次整理了一下关于 spring 的面试题&#xff0c;网上也翻了翻关于 spring 的面试题&#xff0c;汇总了一下&#xff0c;基本都在这里了&#xff0c;当然可能有些过于基本的概念我是直接整理到某一问当中了&#xff…...

    2024/3/4 15:07:57
  10. QT5开发及实例学习之十三Qt5文本编辑功能

    文章目录前言一、设置字体二、设置字号三、设置文字加粗四、设置文字斜体五、设置文字加下画线六、设置文字颜色七、设置字符格式前言 在编写包含格式设置的文本编辑程序时&#xff0c;经常用到的 Qt 类有 QTextEdit 、QTextDocument 、QTextBlock 、QTextList 、QTextFrame 、…...

    2024/3/4 15:07:56
  11. 鼠标和键盘事件带来的便利

    今天是 关于 DOM 事件最后一次 分享&#xff01;&#xff01; 一、常用鼠标事件 1、案例&#xff1a;禁止选中文字和禁止右键菜单 2、鼠标事件对象 3、获取鼠标在页面的坐标 二、常用键盘事件 1、键盘事件 2、键盘事件对象 3、案例&#xff1a;输入框方法提示 一、常用…...

    2024/3/16 23:28:23
  12. FFMPEG之RTSP获取H264/H265裸流保存文件

    参考&#xff1a;https://blog.csdn.net/weixin_42432281/article/details/88348124 1 目标背景 本文的目的是实现linux嵌入式端ffmpeg读取网络相机rtsp码流&#xff0c;不经过编解码操作&#xff0c;直接保存为视频文件&#xff0c;ffmpeg有命令的形式可以实现&#xff08;参…...

    2024/3/6 10:14:38
  13. ES6 (六)数值的扩展

    ES6 数值的扩展二进制和八进制表示法数值分隔符Number上新增的一些属性及方法Number.isFinite() Number.isNaN()Number.parseInt() Number.parseFloat()Number.isInteger()Number.EPSILONNumber.isSafeIntegerMath对象的扩展BigInt 数据类型&#xff08;大数&#xff09;总结二…...

    2024/3/6 10:14:36
  14. 1、JDBC

    第一章 JDBC概述 之前我们学习了JavaSE&#xff0c;编写了Java程序&#xff0c;数据保存在变量、数组、集合等中&#xff0c;无法持久化&#xff0c;后来学习了IO流可以将数据写入文件&#xff0c;但不方便管理数据以及维护数据的关系&#xff1b; 后来我们学习了数据库管理软…...

    2024/3/6 10:14:36
  15. 深富策略:多空角力 市场方向不明

    周三&#xff0c;三大指数集体下挫。上证指数低开震荡下行&#xff0c;一度跌破3500点&#xff0c;尾盘反抽&#xff0c;但是未能翻红。板块大面积红盘&#xff0c;煤炭开采、养殖业、农产品、医疗器械等涨幅居前。仅贵金属、国防军工、贸易、汽车等少数绿盘。 周三指数探底回升…...

    2024/3/6 10:14:34
  16. 2016-2027年全球与中国医药检测行业市场深度调研及投资预测报告

    2016-2027年全球与中国医药检测行业市场深度调研及投资预测报告 2020年中国医药检测市场规模达到了 亿元&#xff0c;预计2027年可以达到 亿元&#xff0c;未来几年年复合增长率(CAGR)为 % (2021-2027)。 本报告研究中国市场医药检测的发展现状及未来发展趋势&#xff0c;分…...

    2024/3/18 14:56:57
  17. Java基本语法

    1.Java程序格式 1.Java程序的基本格式 Java程序必须放在一个类中&#xff0c;类使用class关键字定义&#xff0c;在class前面可以有类的修饰符 如图&#xff1a; 2.编写Java 需要注意的点 (1).Java程序代码可分为结构定义语句和功能执行语句&#xff0c; 结构定义语句用于…...

    2024/3/6 10:14:33
  18. 快递购物APP开发 App定制开发

    案例背景 对商家来说&#xff0c;电商APP为他们提供了一个长期的信息发布平台&#xff0c;APP管理者可以不受时间和空间的限制&#xff0c;用手机或是电脑就能随时发布、管理营销信息&#xff0c;跟进查看营销数据。 案例详情 通过电商APP开发&#xff0c;商家自己就可以宣传…...

    2024/3/18 18:38:05
  19. 2021-2027中国Flex ATX计算机电源市场现状及未来发展趋势

    【报告篇幅】&#xff1a;97 【报告图表数】&#xff1a;133 【报告出版时间】&#xff1a;2021年11月 报告摘要 2020年中国Flex ATX计算机电源市场规模达到了 亿元&#xff0c;预计2027年将达到 亿元&#xff0c;未来几年年复合增长率(CAGR)为 % (2021-2027)。 本文研究中…...

    2024/3/6 10:14:30
  20. MapReduce跑得慢的原因以及优化方法

    MapReduce跑得慢的原因 MapReduce程序的效率瓶颈在于两个方面&#xff1a; 一、 计算机性能 CPU、内存、磁盘健康、网络 二、 I/O操作 数据倾斜map和reduce数量设置不合理reduce等待时间过久小文件过多大量不可拆分的超大文件spill次数过多merge次数过多 我们优化的重点是…...

    2024/3/16 14:48:27

最新文章

  1. 外包干了8天,技术退步明显.......

    先说一下自己的情况&#xff0c;大专生&#xff0c;19年通过校招进入杭州某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了四年的功能测…...

    2024/3/28 21:49:45
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 接口自动化框架(Pytest+request+Allure)

    前言&#xff1a; 接口自动化是指模拟程序接口层面的自动化&#xff0c;由于接口不易变更&#xff0c;维护成本更小&#xff0c;所以深受各大公司的喜爱。 接口自动化包含2个部分&#xff0c;功能性的接口自动化测试和并发接口自动化测试。 本次文章着重介绍第一种&#xff0c…...

    2024/3/25 21:16:08
  4. Rust 的 std::error::Error

    std::error::Error 是 Rust 标准库中的一个 trait&#xff0c;它定义了一个通用的错误处理接口。在 Rust 中&#xff0c;错误处理是一个重要的部分&#xff0c;而 Error trait 使得不同类型的错误可以以一种统一的方式被处理。 Error trait 的定义 Error trait 定义非常简单&…...

    2024/3/27 4:48:12
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/3/27 10:21:24
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/3/24 20:11:25
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/3/18 12:12:47
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/3/24 20:11:23
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/3/26 20:58:42
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/3/28 17:01:12
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/3/24 5:55:47
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/3/27 10:28:22
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/3/26 23:04:51
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/3/26 11:20:25
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/3/24 20:11:18
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/3/28 9:10:53
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/3/24 20:11:16
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/3/24 20:11:15
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/3/27 7:12:50
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/3/24 20:11:13
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/3/26 11:21:23
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/3/28 18:26:34
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/3/28 12:42:28
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/3/28 20:09:10
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57