MySQL基础,快速入门MySQL(1)

140 阅读4分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第1天,点击查看活动详情

MySQL概述

  • MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发的。属于Oracle旗下的产品。
  • MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,是最好的应用软件之一。

MySQL下载与安装

  • 安装一直下一步下一步即可,初学者账号密码都设置为root即可。
  • 如果以前有安装MySQL服务器,想要卸载安装更高版本,可以参考这里卸载MySQL服务器。
  • 配置环境变量

image-20220727232555252.png

image-20220727232339010.png

image-20220727232500819.png

配置成功会变成这样

image-20220727232644943.png

DDL数据定义语言

常用命令

  • create 创建
  • alter 修改
  • drop 删除
  • rename 重命名

创建一个数据库

#库名没有空格或不是关键字,不需要使用反引号包裹
# [if not exists],可选,如果数据库不存在才会创建
create database  [if not exists]库名;
​
#创建时指定字符集和编码
CREATE DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci。

修改数据库

ALTER DATABASE books CHARACTER SET gbk;

删除数据库

DROP DATABASE [IF EXISTS] books;

创建一个数据表

create table [if not exists] 表名(    列名 列的类型【(长度) 约束】,   列名 列的类型【(长度) 约束】);

示例:

image-20220727234237980.png

复制表
#根据表名复制表结构
create table 表名 like 表名
​
#复制表结构和数据
create table 表名 [as] select * from 表名

数据库数据类型

移步菜鸟教程

AUTO_INCREMENT 自增列

含义:可以不用手动的插入值,系统提供默认的序列值。

1、标识列必须和主键搭配吗?不一定,但要求是一个key

2、一个表可以有几个标识列?至多一个!

3、标识列的类型只能是数值型

4、标识列可以通过 SET auto_increment=3;设置步长

image-20220728000259200.png

修改数据表

alter table 表名 add|drop|modify|change column 列名 【列类型 约束】;
​
#修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
​
#末尾添加字段
ALTER TABLE 表名  add 字段名 类型 约束;
​
#首位添加字段
ALTER TABLE 表名  add 字段名 类型 约束 First;
​
#指定位置添加字段
ALTER TABLE 表名  add 字段名 类型 约束 After 字段名;
​
#删除字段
ALTER TABLE 表名  DROP 字段名;
​
#修改字段名
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新类型;
​
#修改字段类型
ALTER TABLE 表名 MODIFY 字段名 新类型 约束;
​
#修改字段默认值
ALTER TABLE 表名 ALTER 字段名 SET DEFAULT 新值;
​
#删除字段默认值
ALTER TABLE 表名 ALTER 字段名 drop DEFAULT;
​
#修改数据表引擎
ALTER TABLE 表名 ENGINE = MYISAM;

约束

含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性

六个约束
  • not null:非空,用于保证该字段的值不能为空。
  • default:默认,用于保证该字段有默认值。
  • UNIQUE:唯一,用于保证该字段的值具有唯一性,可以为空。
  • PRIMARY KEY:主键,用于保证该字段的值具有唯一性,并且非空。一个表只有一个主键。主键可以由一到多个字段组成,多个字段组成的称谓联合主键或复合主键。数字主键,一般设置自动增长。
  • CHECK:检查约束【mysql中不支持】
  • FOREIGN KEY:外键,略
添加约束的时机

创建表时添加约束

ALTER TABLE stuinfo MODIFY COLUMN id INT PRIMARY KEY;

修改表时添加约束

ALTER TABLE stuinfo ADD PRIMARY KEY(id);
约束分类

列级约束:列级约束:对一个数据列建立的约束,称为列级约束列级约束既可以在列定义时声明,也可以在列定义后声明

表级约束:表级约束:对多个数据列建立的约束,称为表级约束表级约束只能在列定义后声明

删除约束
#删除主键约束
ALTER TABLE tab_name DROP PRIMARY KEY;
​
#删除默认约束
ALTER TABLE 表名 ALTER 字段名 drop DEFAULT;
​
#删除唯一约束
ALTER TABLE tab_name DROP [INDEX | KEY] index_name;
​
#删除外键约束
ALTER TABLE tab_name DROP FOREIGN KEY fk_name

DML数据操作语言和DQL数据查询语言

请移步MySQL基础,快速入门MySQL(2)