mysql入门 博客园_MySQL入门

MySQL入门

1、MySQL的基本介绍

数据库(database),数据库是存储数据的仓库,本质是一个系统文件,我们可以对这个文件(数据库)数据进行增删改查操作(crud)。

数据是直接存在数据库中还是数据表中?存在数据表中。

数据表结构及原理:

数据表:由行和列组成。

列:字段

行:记录

84a2f8e0373219ceaa515c5dda55a3b2.png

2、MySQL数据库的安装与卸载

安装:

在网上可以找到安装教程,按着安装就行,安装之前必须保证之前没有安装过mysql或已经卸载干净了。

卸载:

注意:如果MySQL卸载不干净,会导致再次安装的不成功。

1、首先找到控制面板,就程序给卸载

2、找到mysql的安装目录将其删除,

3、再去c盘将C:\ProgramData\目录下的MySQL文件夹给删除,

4、删除mysql的注册表,快捷键window+R搜索regedit进入注册表

路径1:\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\eventlog\Application\MySQL

路径2:\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\services\eventlog\Application\MySQL

删除整个MySQL文件夹即可

SQLYog(图形化界面)

ad8ec98283b47aad63fc87978351d456.png

3、数据库的基本操作

1、通过dos直接访问MySQL

使用基本到dos命令登录系统 : mysql -hIP地址 -u用户名 -p密码

例如:mysql -hlocalhost  -uroot  -proot

如果是本地登录,可以省略掉-h,  如 :mysql -u用户名  -p密码

2、mysql服务的开启与关闭命令

通过视图找到MySQL的服务

我的电脑--右键管理--服务与应用--服务--MySQL。

如果通过命令方式开启和关闭服务:

关闭服务:net stop mysql

开启服务:net start mysql.

3、SQL语言及分类

sql:结构化查询语言。可以用它来对数据进行增删改查(crud)

分为四大类:

DDL(Data Definition Language)数据库定义语言,用来定义数据库对象:数据库,表,列等,关键字:create,alter,drop等,结构上的操作

DML(Data Manipulation Language)数据库操纵语言,用来对表中的数据的增删改,关键字:insert、delete、update等,数据上的操作

DQL数据查询语言:关键字:select、from、where等 结构不会发生变化,数据也不会变化,就是单纯的去查询。

DCL数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户(了解)。

3dc9345c8d35165ca77071082eecb903.png

sql通用语法

sql语句可以单行或多行书写,以分号结尾。

可使用空格和缩进来增强语句的可读性。

MySQL数据库的sql语句不区分大小写,关键字建议使用大写

例如:SELECT * FROM user.

同样可以使用/**/的方式完成多行注释

mysql中的数据类型:

int   整型

double  浮点型

varchar(长度)  字符串型

date  日期类型

DDL-操作数据库结构

创建数据库

命令

说明

create database 数据库名;

在当前服务器下创建指定名称的数据库。

配置数据库时我们指定了utf8,那么数据库默认字符集就是utf8

create database 数据库名character set字符集;

在当前服务器下创建指定名称的数据库,并且指定数据库的字符集(很少使用)

代码准备:

#创建数据库day01_1 数据库中数据的编码采用的是安装数据库时指定的默认编码 utf8

#创建数据库day01_2并指定数据库中数据的编码为gbk

9731670687c1ad4b56f2f517082066c3.png

查看数据库

use  数据库名       :切换数据库

show  databases;     查看MySQL服务器中有哪些数据库

28ecd67c22b633fe55450861261f1c39.png

删除数据库

命令

说明

drop database 数据库名称;

从MySQL服务器中永久删除某个数据库

DDL-操作数据表结构

格式

create table 表名 (字段1 类型  【约束】)

注意:多个字段之间要用逗号隔开

查看表

show tables  :查看当前数据库中的所有表

desc 表名    :查看某张数据表的表结构

删除表:

drop  table  表名   :从当前数据库中永久的删除某张表

修改表结构格式:(了解)

命令

说明

alter table 表名关键字….

修改某张表的某些字段

一般修改表结构,最多进行字段的添加操作

l alter table 表名 add 列名 类型(长度) [约束];

作用:修改表添加列.

例如:

#1,为分类表添加一个新的字段为 分类描述cdesc varchar(20)

ALTER TABLE category ADD cdesc VARCHAR(20);

l alter table 表名 modify 列名 类型(长度) 约束;

作用:修改表修改列的类型长度及约束.

例如:

#2, 为分类表的描述字段进行修改,类型varchar(50)

ALTER TABLE category MODIFY cdesc VARCHAR(50);

alter table 表名 change 旧列名 新列名 类型(长度) 约束;

作用:修改表修改列名.

例如:

#3, 为分类表的分类名称字段进行更换 更换为description varchar(30)

ALTER TABLE category CHANGE cdesc description VARCHAR(30);

alter table 表名 drop 列名;

作用:修改表删除列.

例如:

#4, 删除分类表中description这列

ALTER TABLE category DROP description;

rename table 表名 to 新表名;

用:修改表名

例如:

#5, 为分类表category改名成category2

RENAME TABLE category TO category2;

alter table 表名 character set 字符集(了解);

作用:修改表的字符集

例如:

#6, 为分类表category的编码表进行修改,修改成gbk

ALTER TABLE category CHARACTER SET gbk;

DML-更新表记录(增删改)

插入表记录:insert into

21654b5b09414969d53ad6118b8f9a4c.png

注意:

值于字段必须对应,个数相同,类型相同

值的数据大小必须在字段的长度范围内

除了数值类型,其它的值必须要使用单引号、双引号引起

如果要插入空值,可以忽略不写字段,或者插入null。

更改表记录:update

a704bd105cb7320dba6e29396a857168.png

删除表记录:delete from

5325c97209498487c92a44684baec65d.png

delete from 和truncate的区别:

1、delete from:删除表中所有记录,但是不删除表

2、truncate:将整张表删除,然后重新创建一个一模一样的表结构

DQL-查询数据(重点)

----查询并展示表中所有记录

select * from 表名

---查询并展示表中符合要求的记录

select * from 表名 where 条件

263d68cfe08f7081a50084600129bff3.png

条件查询--where

比较运算符

>  <  <=   >=   =  <> !=

大于、小于、大于(小于)等于、不等于

BETWEEN  ...AND...

显示在某一区间的值

相当于     price >=1000  && price <=2000

IN(set)

显示在in列表中的值

bookName  in (“西游记”,”红楼梦”)

LIKE ‘张pattern’

模糊查询,Like语句中,

% 代表零个或多个任意字符

_ 代表一个字符

IS NULL

判断是否为空

逻辑运算符

and

多个条件同时成立

or

多个条件任一成立

not

不成立,取反。

1a93ca73d3642ae1d136f10d96cb7740.png

单表操作

排序:

order by 字段(需要放置在select语句的最后)  asc/desc   默认是升序

两种

升序:asc

降序:desc

c55d1057f2acd910c18191807969a6ca.png

聚合函数

聚合函数会忽略null空值

今天我们学习如下五个聚合函数:

count(字段):统计指定列不为NULL的记录行数;、

sum(字段):计算指定列的数值和

max(字段):计算指定列的最大值

min(字段):计算指定列的最小值

avg(字段):计算指定列的平均值

d1ede5e6ac98ae0606b33a9ef061dfbc.png

分组函数

格式 :

select 字段1,字段2. from 表名 group by 分组字段

select 字段1,字段2. from 表名 group by 分组字段Having 分组条件;

分组操作中的having子语句,是用于在分组后对数据进行过滤的,作用类似于where条件

where 和having的区别:

1、where是在分组前进行过滤,having是在分组后进行过滤

2、聚合函数可以跟在having后面,聚合函数不可以跟在where后面。

9d6726d41b9cc79813e622918e05a90a.png

select总结

书写顺序(重点):

select 字段 from 表名 where 条件 group by 字段 having条件 order by 字段

执行顺序:(了解)

From 表名

Where  条件

Group by 字段   字段值相同的数据会划分成一组

Having 条件     对每一组分别进行一次运算

Select 字段      把每组中第一条数据取出来。合并成一张新伪表展示这个新伪表上的部分字段

6.   order by 字段    对新伪表进行最后排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值