数据库Day1

📅 2026/7/6 15:15:14 👁️ 阅读次数 📝 编程学习
数据库Day1

📌SQL分类

DDL:操作数据库,表等

DML:对表中的数据进行增删改

DQL:对表中的数据进行查询

DCL:对数据库进行权限控制

📌DDL -- 操作数据库

思维导图

查询

show datebase;

创建

创建数据库

create datebase 数据库名称;

创建数据库(判断,如果不存在则创建)

CREATE DATABASE IF NOT EXISTS 数据库名称;

删除

删除数据库

DROP DATABASE 数据库名称;

删除数据库(判断,如果存在则删除)

DROP DATABASE IF EXISTS 数据库名称;

使用数据库

查看当前使用的数据库

SELECT DATABASE();

使用数据库

USE 数据库名称;

总结

DDL语句操作关键字
创建create database 数据库名;
使用use 数据库名;
删除drop database 数据库名;
select database(); -- 创建数据库 create database db1; -- 判断是否存在,并创建数据库 create database if not exists db2; -- 查看所有数据库 show databases; -- 删除数据库 drop database db2; drop database if exists db2; -- 查看正在使用的数据库 select database(); -- 使用数据库 use db1;

📌DDL—操作数据表

思维导图

DDL语言: 操作数据库、数据表 (创建、修改、删除)

创建表

创建表

CREATE TABLE 表名
( 字段名1 数据类型1,
字段名2 数据类型2, ...
字段名n 数据类型n );

注意:最后一行末尾,不能加逗号

  • 查看某个数据库中的所有表:show tables
  • 查看表结构:desc 表名
# 创建表 create table student ( id int, name varchar(10), -- varchar 是可变长字符串 gender char(1), -- char 是固定字符串 birthday date, score double, email varchar(64), tel varchar(20), status int );

数据类型

MySQL 支持多种类型,可以分为三类:

  1. 数值
  2. 日期
  3. 字符串
类型描述
int整型
double浮点型
varchar字符串型
date日期类型,
格式为 yyyy-MM-dd,
只有年月日,没有时分秒;

删除表

1. 删除表

DROP TABLE 表名;

# drop table student; // student 是表名

2. 删除表时判断表是否存在

DROP TABLE IF EXISTS 表名;

-- 删除表时判断表是否存在 drop table if exists student;

修改表

  • 修改表名
    ALTER TABLE 表名 RENAME TO 新的表名;
-- 1 修改表名 # mystudent1 原来的表名 mystudent2 新的表名 alter table mystudent1 rename to mystudent2; show tables; -- 查看表名
  • 添加一列
    ALTER TABLE 表名 ADD 列名 数据类型;
-- 2 在表中加一列 alter table mystudent2 add remark varchar(20);
  • 修改数据类型
    ALTER TABLE 表名 MODIFY 列名 新数据类型;
-- 3 修改数据类型 alter table mystudent2 modify remark varchar(100);
  • 修改列名和数据类型
    ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型;
-- 4 修改列名和数据类型 alter table mystudent2 change remark intro varchar(20);
  • 删除表中存在的列
    ALTER TABLE 表名 DROP 列名;
-- 5 删除列 alter table mystudent2 drop intro;

查询表

desc 查看表结构

desc 表名

desc mystudent2;

DML

DML语言: 针对数据表中的记录进行增、删、改操作

# 创建表 create table student ( id int, name varchar(20), gender char(1), birthday date ); # 查看表结构 desc student; -- 向表中添加数据 (行记录) -- 1 向数据表中指定列添加数据 insert into stu(id,name) values (1,'李四'); #SQL语句中字符串用单引号 -- 2 向数据表中的所有列添加数据 insert into stu(id,name,gender,birthday) values(2,'王五','男','2026/7/5');# data数据类型也要用单引号 insert into stu values(3,'张三','女','2026/7/6'); -- 3 向数据表中批量添加数据 insert into stu(id,name) values(4,'赵六'),(5,'王一'),(6,'张五'); select * from stu;

修改表中的数据update

# 删除表中数据 -- 删除表中 id 为1 的行记录 delete from student1 where id=1; -- 删除表中 id 为1和2 的行记录(多行记录) delete from student1 where id in(3,4);
-- update 修改数据 -- 修改姓名 update student1 set name='张63' where id=2; -- 将表中id 为2 的性别修改成男性 update student1 set sex='男' where id=2; -- 将表中id 为3 的年龄修改成27 update student1 set age=27 where id=3; -- 一次性修改多个列 update student1 set sex='男' ,address='宁波' where id=4;

删除表中的数据(delete)

# 删除表中数据 -- 删除表中 id 为1 的行记录 delete from student1 where id=1; -- 删除表中 id 为1和2 的行记录(多行记录) delete from student1 where id in(3,4);