12.MySQL数据库概述

MYSQL数据库的常见操作

MySQL数据库的连接与关闭

  • 数据库的连接

image-20201030211733190

  1. -h:指定所连接的数据库服务器配置,可以是IP地址,也可以是服务器名称
  • 创建新用户

image-20201030211943658

  • 创建数据库

image-20201030212115255

  • 删除数据库

image-20201030212152387

  • 创建数据表

image-20201030212334339

总共有8个字段,并设置ID自动增长

操作数据表

  • 插入数据记录

INSERT INTO 表名(字段名1[,字段名2]…)value (数据1[,数据2]…)

  • 查询记录

SELECT 字段名1[,字段名2]… FROM 表名

  • 更新数据

UPDATE 表名 SET 字段名=数据 WHERE 唯一键字段=数值

  1. WHERE后面指定需要更新的行数
  • 删除记录

DELETE FROM 表名 WHERE 条件

MYSQL数据表的设计

数据值和列类型

  • 数据值的数据列类型

image-20201030213846221

image-20201030213926312

  • 字符串类数据列类型

image-20201030214100104

  • 日期类数据值

image-20201030214411559

  • NULL值

数据字段属性

  • UNSIGNED(unsigned):该属性只能用于设置数值类型,不允许数据列中出现负数
  • ZEROFILL(zerofill):该属性也只能设置数值类型,在数值之前自动用0补齐不足的位数
  • AUTO_INCREMENT(auto_increment):该属性用于设置字段的自增量属性,当数值类型的字段设置为自动增量时,每增加一条新记录,该字段的数值就增加1,而且此字段的数值不允许重复,只能修饰整数
  • NULL和NOT NULL:默认值为NULL,即插入值时没有在此字段插入值,默认为NULL值,如果指定了NOT NULL,则必须在插入值时在此字段添入值
  • DEFAULT:通过此属性来指定一个默认值,如果没有在此添加值,那么默认添加此值

创建表

image-20201030215714964

在创建表users时,除了需要制定各个字段的属性和索引外,还要指定默认的表类型为MyISAM,以及指定默认创建的表字符集(character set)为utf8,校队规则(collation)是utf8_general_ci。

image-20201030223116998

修改表

image-20201030221256030

  • 为指定数据表添加一个新字段:

image-20201030221347379

如果没有指定FIRST或者AFTER,则在列尾添加一列,否则在指定列添加新列

  • 更改原有字段的类型

image-20201030221820611

CHANGE除了能修改列表类型,也能修改列表名称,而MODIFY不能修改列表类型

  • 更改数据表的名字

image-20201030222009184

删除表

image-20201030222032190

数据表的类型及存储位置

  • MylSAM数据表与InnoDB数据表

image-20201030223531374

  • 使用ENGINE和TYPE来指定需要的表的类型

image-20201030223626755

数据表的默认字符集

image-20201030224949414

创建索引

  • 主键索引: PRIMARY KEY

image-20201030225824760

主键索引必须在一个表中唯一,主键索引的值不能重复、不能为空

  • 唯一索引:UNIQUE

image-20201030230106961

  • 常规索引:INDEX

创建一个名为ind的索引,索引字段是uid、cid

image-20201030230438621

如果在创造表时,没有创建索引,就需要使用CREATE INDEX来创建常规索引

image-20201030230546601

SQL语言设计

添加数据

image-20201030230649537

更新数据

image-20201030230744206

  • where是检索条件,如果不使用where语句,会更新数据表中的全部行

删除数据记录

image-20201030230930946

查询语句

image-20201030231011737

  • 选择特定的字段进行查询

image-20201030231257452

  • 使用AS语句给字段取别名,别名需要使用单引号

image-20201030231414386

  • DISTINCT关键字:返回重复查询数据的唯一组合,

image-20201030231544740

  • 使用表达式的列,选择版本列和1.23*10的计算结果列,为了避免与PHP函数混淆,最好使用别名

image-20201030231744413

  • 使用where语句,用条件进行查询

image-20201030231852271

image-20201030231903694

  • 根据空值检索条件

image-20201030231957699

  • 使用Between and进行范围查找

image-20201030232041069

  • 范围对比查找

image-20201030232114601

  • 模糊查找
  1. 使用%,表示0个或者任意多个字符
  2. 使用“_”,表示单个的任意字符

image-20201030232347622

image-20201030232356460

  • 多表查询
  1. 查询多个表格,可以使用“表别名·列名”的形式来进行访问,如果没有使用where作为条件,称为非等值查询,查询出来的结果,有冗余
  2. 有了where作为条件,查询出有意义的结果,这个叫做等值查询
  • 嵌套查询
  1. 在where字句当中,还可以嵌套一个SELECT语句作为条件来进行查询
  • 使用ORDER BY对结果进行排序
  1. DESC关键字:降序排列;ASC关键字:升序排列
  • 使用LIMIT限定结果行数

image-20201031112708423

  1. 以上语句表示,从偏移量0的位置开始,取5行内容
  • 使用统计函数

image-20201031112814515

image-20201031112833616

© 版权声明
THE END
喜欢就支持以下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容