Mysql基础知识
Mysql基础知识
Mysql概述
- 数据库相关概念
- 数据库:存储数据的仓库,数据是有组织的进行存储,Database(DB)。
- 数据库管理系统:操纵和管理数据库的大型软件,DataBase Management System(DBMS)。
- SQL:操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准,Structured Query Language(SQL).
- 主流的关系型数据库管理系统:Oracle,Mysql ,Microsoft SQL Server等等。
- 关系型数据库(RDBMS):建立在关系模型基础上,由多张相互连接的二维表组成的数据库。通过表结构存储数据的数据库称之为关系型数据库,相反,不通过表结构存储数据的数据库称为非关系型数据库。
- 数据模型:客户端--->DBMS--->构建数据库,表,添加表记录等等。
- 客户端连接:命令行方法:cmd 输入:
mysql -u root -p
Mysql数据库的启动和停止
- 方式一:win+R,输入services.msc 打开本地服务,找到mysql选择关闭服务等。
- 方式二:可通过任务管理器停止服务。默认mysql是开机自动启动的。
- 方式三:cmd命令
启动:net start mysql80
停止:net stop mysql80
SQL
- SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾。
- SQL语句可以使用空格、缩进来增强语句的可读性。
- MySQL数据库的SQL语句不区分大小写,关键字建议大写。
- 注释:
单行注释:--注释内容 或 #注释内容(MySQL特有)
多行注释:/ * 注释内容 */
- SQL分类
分类 | 全称 | 说明 |
---|---|---|
DDL | Data Definition Language | 数据定义语言,用来定义数据库对象(数据库、表、字段) |
DML | Data Manipulation Language | 数据操作语言,用来对数据库表中的数据进行增删改 |
DQL | Data Query Language | 数据查询语言,用来查询数据库表中的记录 |
DCL | Data Control Language | 数据控制语言,用来创建数据库用户、控制数据库的访问权限 |
- DDL-数据库操作
- 查询
# 查询当前服务器中所有数据库,注意是databases,复数,分号结尾
SHOW DATABASES;
# 查询当前数据库
SELECT DATABASE();
- 创建
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
# 例如:create database itqiulimei default charset utf8mb4; #utf8mb4支持存储4个字节的内容
- 删除
DROP DATABASE [IF EXISTS] 数据库名;
- 使用
use 数据库名;
- DDL-表操作-查询
- 查询当前数据库所有表,前提是要先进入到这个数据库,用use指令使用这个数据库
SHOW TABLES;
- 查询表结构
DESC 表名;
- 查询指定表的建表语句
SHOW CREATE TABLE 表名;
- DDL-表操作-创建
# 注意:[...]为可选参数,最后一个字段后面没有逗号
CREATE TABLE 表名(
字段1 字段1类型[COMMENT 字段1注释],
字段2 字段2类型[COMMENT 字段2注释],
字段3 字段3类型[COMMENT 字段3注释],
......
字段n 字段n类型[COMMENT 字段n注释]
)[COMMENT 表注释];
- DDL-表操作-数据类型
Mysql中的数据类型有很多,主要分为三类:数值类型、字符串类型、日期时间类型。
案例:
create table emp(
id int,
wordno varchar(10),
name varchar(10),
gender char(1),
age tinyint unsigned,
idcard char(18),
entrytime date
);
- DDL-表操作-修改
- 添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释][约束];
- 修改指定字段的数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);
- 同时修改字段名称和字段数据类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释][约束];
- 删除字段
ALTER TABLE 表名 DROP 字段名;
- 修改表名
ALTER TABLE 表名 RENAME TO 新表名;
- DDL-表操作-删除
- 删除表
DROP TABLE [IF EXISTS] 表名;
- 删除指定表,并重新创建该表,意思是将原表的数据全部清空,只剩下表结构,即一张空表。
TRUNCATE TABLE 表名;