最近用python爬虫时,用到了数据库(MySQL),研究学习了一波,不敢说懂得了多少,只能说入门了,总结如下。
一,数据库登录:
登录有两种方式:
一是在DOS命令行中使用 “mysql -u root -p”,然后输入密码登录,注:此方式需要在bin目录底下,或者将MySQL中的bin目录的路径添加到的系统变量path,然后就可以在任意目录底下了,(注,登录MySQL前请确认MySQL服务打开,可再任务管理器的服务里看)
二是在 MySQL comment line client 中直接输入密码登录,此程序可再Windows开始中找到(前提是你下了数据库,并且有了数据库账号了,如果没有请出门左转,去隔壁MySQL下载安装看看)。
在登录数据库之后就可以对库进行一系列的操作了
二 数据库操作:
1,创建库,
"create database xxx;"注:分号必不可少,例:"create database school;",创建库school
2,展示所创建的库:"show databases;"
3 删除数据库,
"drop database xxxxx",例如:"drop database school;",删除库school
操作表必须在数据库中,因此,在对表进行操作之前需要,命令"use xxxx;".
三 表的操作
1,创建表,
先输入命令“use school”,(我们还是创建school,并以之为例),
在school库里面便可以开始创建了,
例如:输入命令
create table studentinfo(
student_ID int(8),
student_name varchar(10),
student_gender char(2),
student_birth date,
student_class varchar(20)
);
此命令是创建一个名为studentinfo的表,表中分别有student_ID,student_name ...,这五项,int(8)
,表示8位整数,varchar(10)表示最多10个字符,无论汉字还是英文,区别尽在实际的大小之中,
char(2)表示数据每个数据的长度固定为2,若不够则用空格自动填充,date 表示时间格式为 2018-12-
25,
2,用describe xxx;命令查看表的信息,
3,删除表:drop table xxxx;
二 修改表
1,修改表名:alter table xxx rename to xxxx;例如 alter table studentinfo rename to student;
2 ,修改表项: alter table 表名 change 旧表项名 新表项名 新数据类型;例如:atler table student change student_ID student_id int(5);如果数据类型不变就用原来的,
3 ,仅修改表项的数据类型: alter table 表名 modify 表项 新数据类型;,如:alter table student modify student_id int(8);
4,修改表项的顺序:alter table 表名 modify 表项名 数据类型 first |after 表项; 例如:alter teble student modify student_birth date after student_id;
5,添加表项:alter table 表名 add 新表项名 新数据类型 [约束条件,如:first(第一项),after 表项名(在某一项的后面)]
例如: alter table student add student_score int(3) first;
6,删除表项:alter table 表名 drop 表项名;例如:alter table student drop student_score;
四,数据的插入
1,插入单条数据:insert 表名(表项1,表项2,...’)values(值1,值2....);例如:
insert student(student_id,student_name,student_birth,student_gender, student_class)
values(11201601,'张永峰','1998-12-01','男','电子商务1101');(项名顺序与值的顺序对应)
当插入的语句包括所有项时,项名可以不写,
2 插入多条记录 insert 表名(表项)values(值),(值);
例如:insert student
values(11201602,'何平','1998-10-01','女','计算机科学与技术'),
(11201603,'张龙','1998-10-03','男','计算机科学与技术'),
(11201604,'赵雅','1998-11-12','女','电子商务1101');
3,数据的修改 update 表名 set 表项='值'where (where为可选项,添加限制条件)当不添加限制条件时,则表示所有项。例如:
update student set student_class='计算机'where student_class='计算机科学与技术';(将班名计算机科学与技术改为计算机,所有匹配的项)
4,删除数据:delete from 表名[where],例如:删除表中张永峰的数据,delete from student where student_name='张永峰';
五,数据查询
1,简单查询:select 表项1,表项2 ....from 表名;
①也可用 select * from 表名;表示输出所有的项。
②为输出的列取别名:表项名 as 别名,或者直接 表项名 别名,
③④⑤查询其中一项,select 表项 from 表名;
可以发现输出了每一项数据的student_class,但有重复,用distinct 字限定重复
④ where语句限定查询条件 select 表项名 from 表名 where 条件表达式:
例如,输出所有计算机班的同学信息;
如果只想输出其中的某几列可以自己限定,
⑤ 模糊查询 在限定条件中用 “表项名 like 表达式”,(表达式中可用_表示匹配一个字符,%表示匹配0个或多个字符)
例如输出姓张的同学
例如:输出生日在10月的同学,
⑥逻辑字 “and”“or”
例如,输出计算机班的姓何的同学
⑦ order by [asc|desc]语句,对输出结果进行排列,ASC 表示升序,为默认值,desc为降序
例如:输出计算机班的学生,按学号降序排列
这些基本操作,基本满足了我学习python 的数据库键入操作,后续学习之后,接着补充。哈哈哈哈