Excel视频教程(入门到精通)【共223课时】

超全汇总!一篇讲完MySQL的入门干货

MySQL作为全球使用最广泛的开源关系数据库,是目前很多企业的存储数据的选择(没使用的要么自己研发,要么用付费的)。

如果你的工作经常和数据打交道,即便现在还没用到MySQL,也可以先学起来,一则可以帮助处理大量数据(顺便拉踩一下数据量大就容易卡死的Excel);二则可以多一门技能,简历绝对好看些。

本篇将带同学们了解MySQL的一些概念和最基础的操作,没有任何基础的同学,也能轻松看懂,需要的盆友们赶紧收藏!

MySQL的基本概念

MySQL是关系型数据库。一个关系型数据库,由一个或数个数据表组成,一个数据表由表头、列、行、键和值组成。

  • 表头(header):每一列的名称;
  • 列(col):具有相同数据类型的数据的集合;
  • 行(row):每一行用来描述某条记录的具体信息;
  • 值(value):行的具体信息,每个值必须与该列的数据类型相同;
  • 键(key):键的值在当前列中具有唯一性。

MySQL的脚本组成

MySQL通过执行SQL脚本来完成对数据库的操作, 该脚本由一条或多条MySQL语句(SQL语句+扩展语句)组成。

标识符:标识符用来命名一些对象,如数据库、表、列、变量等,以便在脚本中的其他地方引用。MySQL标识符命名比较通用的规则:标识符由字母、数字或下划线(_)组成, 且第一个字符必须是字母或下划线。

关键字:MySQL的关键字众多, 这里不一一列出, 在学习中学习。 这些关键字有自己特定的含义, 尽量避免作为标识符。

关键字

含义

null

数据列可包含null值

not null

数据列不允许包含null值

default

默认值

primary key

主键

auto_increment

自动递增,适用于整数类型

unsigned

无符号

character set name

指定一个字符集

语句:MySQL语句是组成MySQL脚本的基本单位,每条语句能完成特定的操作,他是由 SQL 标准语句+MySQL扩展语句组成。

函数:MySQL函数用来实现数据库操作的一些高级功能,这些函数大致分为以下几类:字符串函数、数学函数、日期时间函数、搜索函数、加密函数、信息函数。

MySQL的数据类型

MySQL有3大类数据类型, 分别为数值、日期\时间和字符串, 这3大类中又更细致地划分了许多子类型。

数值类型

整数

类型

范围(有符号)

tinyint()

(-,)

smallint()

(-,)

mediumint()

(-,)

int()

(-,)

bigint()

(-9,,,,,,, )

PS:取值范围如果加了unsigned,则最大值翻倍,如tinyint unsigned的取值范围为(0~)。

浮点数

类型

范围(有符号)

float(m,d)

(- E+,- E-),0,( E-, E+)

double(m,d)

(- E,- E-),0,( E-, E)

decimal(m,d)

依赖于M和D的值

PS:m总个数,d小数位。如设一个字段定义为float(5,3),表示总个数为5个,小数3个,这时插入一个数,实际数据库里存的是,但总个数还以实际为准,即6位。

日期和时间

类型

范围

格式

date

/

YYYY-MM-DD

time

'-::'/'::'

HH:MM:SS

year

/

YYYY

datetime

::/ ::

YYYY-MM-DD HH:MM:SS

timestamp

::/ ::

YYYYMMDD HHMMSS

字符串类型

text类型(文本方式存储)

类型

大小

char

bytes

varchar

bytes

tinytext

bytes

text

bytes

mediumtext

bytes

longtext

bytes

blob类型(二进制方式存储,可用来存储图片、音乐等)

类型

大小

tinyblob

bytes

blob

bytes

mediumblob

bytes

longblob

bytes

MySQL的基本操作

登录MySQL

打开命令提示符, 输入以下格式的命令:

mysql -h 主机名 -u 用户名 -p

-h : 该命令用于指定客户端所要登录的MySQL主机名, 登录当前机器该参数可以省略;

-u : 所要登录的用户名;

-p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。

然后命令提示符会一直以mysql> 加一个闪烁的光标等待命令的输入,输入exit或quit退出登录。

创建一个数据库

使用 create database 语句可完成对数据库的创建,创建命令的格式如下:

create database 数据库名 [其他选项];

注意: MySQL语句以分号(;)作为语句的结束。

举个栗子:创建一个名为text的数据库,在命令行下执行以下命令:

create database text character set utf8mb4;

注意:在创建时通过 character set utf8mb4 将数据库字符编码指定为 utf8mb4。创建成功时会得到 Query OK, 1 row affected sec) 的响应。

创建数据库表

要对一个数据库进行操作, 必须先选择该数据库,否则会提示错误。在登录后使用use语句指定,命令:

use 数据库名;

选择成功后会提示:Database changed

然后使用 create table 语句可完成对表的创建,create table 的常见形式:

create table 表名称(列声明);

举个栗子:以创建 students 表为例, 表中将存放 学号(id)、姓名(name)、性别(sex)、年龄(age)、联系电话(tel) 这些内容:

create table staffs(
id int unsigned not null auto_increment primary key,
name char(8) not null,
sex char(4) not null,
age tinyint unsigned not null,
department char(8) not null
);

注意:括号内有5列内容,id、name、sex、age、department为每列的名称,后面跟的是数据类型描述,列与列的描述之间用逗号(,)隔开。

向表中插入数据

insert语句可以用来将一行或多行数据插到数据库表中, 使用的一般形式如下:

insert [into] 表名 [(列名1, 列名2, 列名3, ...)] values (值1, 值2, 值3, ...);

其中[]内的内容是可选的。

举个栗子:要给text数据库中的staffs表插入一条记录,执行命令:

insert into staffs values(1,"张三","男",,"市场部");

查询表中的数据

select 语句常用来根据一定的查询规则到数据库中获取数据,其基本的用法为:

select 列名称 from 表名称 [查询条件];

举个栗子:查询staffs表中所有员工的名字和年龄,输入查询语句:

select name, age from staffs;

按特定条件查询

where关键词用于指定查询条件,用法形式为:

select 列名称 from 表名称 where 条件;

举个栗子:查询所有性别为女的员工信息。输入查询语句:

select * from staffs where sex="女";

举第二个栗子:查询年龄在岁以上的员工信息,输入查询语句:

select * from staffs where age > ;

举第三个栗子:查询年龄小于且性别为男的员工信息,输入查询语句:

select * from staffs where id<5 and age>;

更新表中的数据

update语句可用来修改表中的数据,基本的使用形式为:

update 表名称 set 列名称=新值 where 更新条件;

举个栗子:将id为1的姓名改为“杨三”,输入语句:

update staffs set name=”杨三” where id=1;

举第二个栗子:将所有员工的年龄增加1,输入语句:

update staffs set age=age+1;

删除表中的数据

delete语句用于删除表中的数据, 基本用法为:

delete from 表名称 where 删除条件;

举个栗子:删除id为2的行,输入语句:

delete from staffs where id=2;

举第二个栗子:删除所有市场部的员工信息,输入语句:

delete from staffs where department=”市场部”;

举第三个栗子:删除表中的所有数据,输入语句:

delete from staffs;

创建后对表的修改

alter table语句用于创建后对表的修改,基础用法如下:

1,添加列:

alter table 表名 add 列名 列数据类型 [after 插入位置];

举个栗子:在表的最后追加列job,输入语句:

alter table staffs add job char(5);

举第二个栗子:在名为 age 的列后插入列date_on_board,输入语句:

alter table staffs add date_on_board date after age;

2,修改列:

alter table 表名 change 列名称 列新名称 新数据类型;

举个栗子:将表department列改名为dept,输入语句:

alter table staffs change department dept char(8) not null;

3,删除列:

alter table 表名 drop 列名称;

举个栗子:删除date_on_board列,输入语句:

alter table staffs drop date_on_board;

4,重命名表:

alter table 表名 rename 新表名;

举个栗子:重命名staffs表为workmates,输入语句:

alter table staffs rename workmates;

5,删除整张表:

drop table 表名;

举个栗子:删除workmates表,输入语句:

drop table workmates;

6,删除整个数据库:

drop database 数据库名;

举个栗子:删除text数据库,输入语句:

drop database text;

看完之后,肯定有盆友吐槽:这也太难用了吧,还不如用Excel呢!别急~~这还只是MySQL入门级操作,以后我会分享更高级的操作,甩掉Excel百条街!

码字不易,希望大家看完给我一个小小的反馈~谢啦!

原文链接:,转发请注明来源!