MySQL 一一 MySQL基本使用

1、数据库

简单来说,所谓的数据库就是存储数据的容器,而且是永久存储的。

2、为什么需要数据库


3、为什么要学习MySQL数据库

最早MySQL数据,瑞典AB公司开发的一款开源型的关系型数据库

随着时间的推移,瑞典AB公司把MySQL数据库转让给Sun公司(Java语言的创始公司)

后来,Sun公司经营不善,又把MySQL数据库转让给甲骨文公司(Oracle数据库)

4、数据库的分类

在实际项目开发中,数据库一共分为两大类:①关系型数据库 ②非关系型数据

非关系型数据库有哪些:Redis、MongoDB

关系型数据库:

小型数据库:微软Access

中型数据库:DB2MySQLSQL Server

大型数据库:Oracle

5、什么是关系型数据库(MySQL)

通过一种“关系”去管理实体信息,实体信息之间的联系。

关系:实际上就是一张二维表,有列,还有行。


6、数据库的原理图


所以由上图可知:我们学习的过程,先学数据库->数据表->对数据进行增删改查操作

二、MySQL的基本操作

1、MySQL-Front软件的使用

①启动PHPStudy中的MySQL数据库


②确认MySQL数据库的密码。

注意:连接数据库需要用户名(默认:root)和密码(默认:root


③解压MySQL-Front.rar压缩包


2、MySQL库操作

1)创建数据库

在实际项目开发中,一个项目就是一个数据库。

创建MySQL数据库:

create  database  数据库名称;

示例代码:

选中localhost,然后切换到SQL编辑器


SQL编辑器中输入create database db_20171227;如下图所示:


2)删除数据库

基本语法:

删除就是不想要了,不想要了就是丢掉,丢掉的单词:drop

drop database  数据库名称;

示例代码:


特别注意:删除数据库是不可逆的,删除之前一定要慎重。

3)查看数据库

①查看所有数据库

查看的单词:show

查看所有数据库:show  databases;

示例代码:

②显示指定的某类数据库

show databases   like   ‘db%’; //查询所有以db开头的所有数据库

普及like模糊查询,有两个关键字需要记住:

_(下划线):代表任一一个字符,可能代表a也可能代表b...

%(百分号):代表任意的n个字符,可能代表ab也可能代表abcd...

4)修改数据库

特别说明:在最新版本的MySQL中,数据库是不允许修改的。如果想修改必须删除在重建。

3、MySQL数据表操作

MySQL中,存放数据的真实位置都是数据库中的数据表。

数据表就是一张二维表,有列有行。


数据库很容易创建,但是数据表的创建有一点麻烦,麻烦在哪里呢?答:创建数据表时候,必须先创建列信息。

学号(纯数字)唯一

姓名(字符串)

年龄(纯数字)

性别(男、女、保密)

1

 

 

 

2

 

 

 

3

 

 

 

 

如上图所示,创建数据表时,不需要指定数据行,但是必须指定数据列,确认你要往里面存放什么类型的数据。

 

创建表必须有两个东西:第一个东西就是列信息,第二个东西就是列属性(什么类型)

1)创建数据表(前提是现有数据库)

创建数据库并选择数据库(选择的关键词:use


由于我们想数据表中插入的数据存在中文,所以也要设置编码格式

基本语法:set  names utf8;  //注意:数据库中的编码格式没有横杠

但是如果你使用的是MySQL-Front可以不需要这行代码,因为软件默认就是utf8。

db_20171227数据库中创建数据库

创建单词:create

表的单词:table

连在一起:

create table  tb_user(

  -- id代表列名称,不支持中文

  -- int整数

  -- not null不能为空

  -- auto_increment

  id int notnull auto_increment,

  usernamevarchar(20) not null,

  age int,

  genderenum(‘男’,’女’,’保密’),

  primary key(id)

) engine = myisam default charset=utf8;

示例代码:


2)数据表的列类型

创建数据表的基本语法:

create table  数据表名称(

    列名称(英文)  列类型   列约束(not null)

);

整数类型(每个类型所表示的范围不同)


tinyint :微整型,范围-128 -> 127(有符号型),如果添加unsigned(无符号型),0-255,人的年龄比较适合使用无符号的tinyint进行存储。

smallint :小整型,-32768->32767(有符号型),如果添加unsigned(无符号型),0-65535,中小型网站会员,可以使用smallint。

mediumint :中整型,-800->800万,无符号型,1600万左右,如果一个门户网站的文章数量可以使用mediumint

int :整型,-21亿->21亿,无符号型,42亿左右,全世界的人口数量

bigint :无法用int类型保存的都可以使用bigint

 

小数类型(带有小数点的数据),记住一个类型即可:decimal(M,N)

decimal(11,2) :数字的总长度(整数部分+小数部分)< 11位,2代表小数位,保留2位小数。在实际项目开发中,主要用于保存产品的价格

 

字符串类型(char类型与varchar类型,text文本类型)

char类型:char(255),如果一个字符串是固定长度的,而且小于255个字符,建议使用char类型,比如md5加密后的结果是固定的32位,建议采用char(32)

 

varchar类型:varchar(255),如果一个字符串的长度不是固定的,建议采用varchar类型。比如人的姓名、文章的标题、文章的描述。

 

对于字符数量超过255个字符的情况,建议使用text文本类型,比如文章的内容,产品的具备介绍。这些都是采用text文本类型。

 

两种特殊的字符串类型(enum枚举类型与set集合类型)

enum(‘男’,’女’,’保密’) :单选,多个结果中选1个

set(‘吃饭’,’睡觉’,’打豆豆’) :多选,多个结果中可以同时选中多个

 

例1:创建一个数据库,然后创建一个数据表,要求包含(编号、昵称、密码、性别、爱好、个性签名)

示例代码:


例2:创建一个数据库,然后创建一个数据表,要求包含(编号、标题、价格、缩略图、作者、出版社、发布时间)

在实际项目开发中,如何创建数据库?

答:先参考一下同行的项目都有哪些属性,每个属性就是一个字段(列)

 

编号

标题

价格

缩略图

作者

出版社

发布时间

 

 

 

 

 

 

 


示例代码:


3)删除数据表

丢掉:drop

表:table

删除数据表:drop  table  数据表名称;

4)修改数据表(数据表的名称)

重命名:rename

rename table  原来的名字 to 新名称;

5)查看数据表

①查看所有的数据表或某类的数据

show tables  like   ‘_或%’;

②查看数据表的结构

desc  数据表名称;

示例代码:


4、MySQL中数据的操作(增删改查)

1)向数据表中插入数据

基本语法:

插入:insert

向数据表中插入数据:

insert into   数据表名称([字段1,字段2...])  values (字段值1,字段值2...)

示例代码:向tb_user表中插入数据


示例代码:根据字段插入数据


2)更新数据表中的记录

基本语法:

更新:update

update  数据表名称 set  字段(列) = 更新后的值,字段(列) = 更新后的值 where  条件;

3)从数据表中查询数据

查询所有数据

查询:select

select *  from   数据表名称;

select  字段(某一列) from  数据表名称;

根据条件查询数据(多了一个where)

4)从数据表中删除数据(重点)

基本语法:

删除:delete

delete from 数据表名称  where 条件;

delete from 数据表名称;

truncate 数据表名称;

两者的功能都是删除所有数据,但是truncate删除的数据,其主键(primary key)会重新编号。而delete from删除后的数据,会继续上一次编号。

正文到此结束
本文目录