文章概述:该文章主要是对一些mysql的安装以及基础内容进行描述,希望能帮到大家
文章目录
- Windows安装MySQL5.7.17
- sql语句
- 进入数据库并查看各内容
- 更改表结构(基础)
- 对表内容进行处理
- 多表关联
- mysql的聚合函数
- mysql的一些常用关键字总结
- 数据库中数据的导出
- 数据库中数据的导入
- 练习题
Windows安装MySQL5.7.17
可按照这个菜鸟安装教程进行安装,也可参照下文进行,内容差不多
- 在MySQL官网 http://dev.mysql.com/downloads/mysql/ 上面下载ZIP安装包(进入之后点下图内容)
- 下载第二个:Windows (x86, 64-bit), ZIP Archive。
- 下载完成后解压,将其放到想要安装的目录下。
例如:D:\MySQL5.7\mysql-5.7.17-winx64 - 新建一个my.ini配置文件,原始的my-default.ini配置文件只是个模版,不要在里面改动。
my.ini的内容如下:(basedir和datadir都是填自己设置的)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KdZdsMyG-1606462619211)(C:\Users\刘元汉\Desktop\数据库\笔记\mysql基础内容.assets\image-20201127145325879.png)] mySQL提示已经安装目录 mysql安装后的样子_mySQL提示已经安装目录](https://s2.51cto.com/images/blog/202406/22151312_66767988ecf6c1057.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
[mysql]
default-character-set=utf8
[mysqld]
port = 3306
basedir=D:\MySQL5.7\mysql-5.7.17-winx64 datadir=D:\MySQL5.7\mysql-5.7.17-winx64\data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
explicit_defaults_for_timestamp=true- 在安装路径下新建一个空的data文件夹。
- 以管理员身份运行cmd,进入bin目录,执行 mysqld --initialize-insecure --user=mysql 命令。不进行这一
步,安装完成之后无法启动服务。 - 依然在管理员cmd窗口的bin目录下,执行 mysqld install 命令安装。完成后会提示安装成功。
- 依然在管理员cmd窗口的bin目录下,执行 net start mysql 命令启动MySQL服务。
- 修改环境变量,添加"D:\MySQL5.7\mysql-5.7.17-winx64\bin"。
- 在普通cmd窗口中,进入bin目录,执行 mysql -u root -p 命令,默认没有密码,回车进入。
sql语句
进入数据库并查看各内容
--查看含有的数据库
show databases;
--进入数据库
use 数据库名;
--查看所有表
show tables;
--查询表结构
desc 表名;更改表结构(基础)
--增加字段
alter table 表名 add 字段 字段类型
--更改字段类型
alter table 表名 change 旧字段 新字段 字段类型
alter table 表名 modify 字段 字段类型
两者区别:change可改名,modify不可改名
--更改字段名
alter table 表名 rename to 新字段名
--删除字段
alter table 表名 drop 字段
--将表内容全部删除但不删除表字段
truncate table 表名
或truncate 表名
--将表整个删除
drop table 表名对表内容进行处理
--增加内容
格式:
insert into 表名(字段) values(值);
如:
insert into student(sid,sname) values(1,'张三'),(2,'王二');
--删除内容
格式:
delete from 表名 where 条件
如:
delete from student where sname='张三';
--修改内容
格式:
update 表名 set 字段名=更改的值 where 条件
如:
update student set sname='李四' where sname='王二';
--查询内容
格式:
select 字段 from 表名 where 条件(没有可不加);
如:
select sname from student where sid=1;多表关联
--用where进行关联
select * from student,score where student.sid=score.sid;
--用join进行
select * from student join score on student.sid=score.sid;注意:
1、两个关联方式结果一样但操作过程中join会更好(这里看起来简单但是需要多加练习才能掌握多表关联的使用)
2、加限制条件是为了防止笛卡尔积(笛卡尔积就是新的表的行数为第一个表的所有行x第二个表的所有行)
文章末尾有一些小练习题大家想练的可以点进去练习
mysql的聚合函数
sum(),avg(),count(),max(),min()
常与group by联用mysql的一些常用关键字总结
limit 5:返回前5列
limit 5 ,2:跳过前5取2;即6列-8列
limit 4 offset 3:从行3开始取4行
,数据库.表名:完全限定字段和表明
order by 字段:排序(升序);
order by 字段 desc:(降序)
group by 字段:给字段分组
and的优先级更高
like:查询内容,%匹配任意字符的任意个数,_匹配任意一个字符
regexp:查询内容,通过正则表达式查询
having过滤组
where过滤行
in(,)是相当于或的关系
distinct:去除列中重复的部分数据库中数据的导出
1、数据库数据导出
# 不要进入mysql,然后输入以下命令 导出某个库中的数据
mysqldump -u root -p 数据库名 > 导出路径/名.sql导出一个库中所有数据,会形成一个建表和添加语句组成的sql文件
之后可以用这个sql文件到别的库,或着本机中创建或回复这些数据
2、将数据库中的表导出
# 不要进入mysql,然后输入以下命令 导出某个库中的数据
mysqldump -u root -p 库名 表名 > 导出路径/名.sql数据库中数据的导入
把导出的sql文件数据导入到mysql数据库中
# 把导出的表sql 导入数据库 导库和表都一样
mysql -u root -p 库名 < sql文件地址
















