Mysql数据库基础(入门)

发布于:2025-07-28 ⋅ 阅读:(10) ⋅ 点赞:(0)


目录

一.认识Sql

1.什么是Sql

2.Sql的作用

3.Sql通用语法

4.Sql分类

二.数据库的操作(DDL)

1.创建数据库

2.显示/使用数据库

3.修改数据库

4.删除数据库

三.常用数据类型

1.数值类型

2.字符串类型

3.日期类型

4.详细的数据类型

四.表的操作(DDL)

1.创建表

2.查看表

3.修改表

4.删除表



一.认识Sql

1.什么是Sql

        结构化查询语言(Structured Query Language)简称Sql.它是一种特殊的带有目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询,更新和管理关系数据库系统。

2.Sql的作用

        ①所有关系型数据库都可以使用SQL

        ②是所有关系型数据库的统一查询规范,不同的关系型数据库都支持SQL

        ③不同数据库之间的sql有一些区别(我们在此主要学习MySql数据库)

3.Sql通用语法

        ①SQL语句可以单行 或者 多行书写,以分号 结尾 ; (Sqlyog中可以不用写分号)

        ②可以使用空格和缩进来增加语句的可读性。

        ③MySql中使用SQL不区分大小写,一般关键字大写,数据库名 表名列名 小写。

        ⑤注释方式

注释类型

语法

说明

示例

单行注释

-- 注释内容

标准SQL单行注释,

必须包含空格

--

后紧跟一个空格)

SELECT * FROM users; -- 查询所有用户数据

多行注释

/* 注释内容 */

标准SQL多行注释,可跨越多行

/* 该查询用于获取活跃用户数据 创建日期:2023-01-01 */

MySQL单行注释

# 注释内容

MySQL特有单行注释,

无需空格

#

后可直接写内容)

SELECT * FROM products # 获取所有商品信息

4.Sql分类

分类

简称

全称

说明

数据定义语言

DDL

Data Definition Language

定义数据库对象:数据库、表、列等

(例如:

CREATE

,

ALTER

,

DROP

数据操作语言

DML

Data Manipulation Language

对数据库中的表记录进行更新操作

(例如:

INSERT

,

UPDATE

,

DELETE

数据查询语言

DQL

Data Query Language

查询数据库中的表记录

(核心命令:

SELECT

数据控制语言

DCL

Data Control Language

定义数据库访问权限、安全级别及创建用户

(例如:

GRANT

,

REVOKE

(了解)

  • 建表结构 → DDL
  • 增删改数据 → DML
  • 检索数据 → DQL
  • 设置用户权限 → DCL

我们在此重点学习DML和DQL。

二.数据库的操作(DDL)

1.创建数据库

命令  说明
create database 数据库名; 创建指定名称的数据库。
create database 数据库名 character set字符集; 创建指定名称的数据库,并且指定字符集(一般都指定utf8mb4)

        示例:

        创建名为 db_test的数据库

create database db_test;

        如果系统没有 db_test 的数据库,则创建一个使用utf8mb4字符集的 db_test 数据库,如果有则不创建

create database if not exists db_test character set utf8mb4;

2.显示/使用数据库

命令 说明 示例
USE 数据库名; 切换当前操作的数据库 USE shop_db;
SELECT DATABASE(); 查看当前正在使用的数据库名称 SELECT DATABASE(); → 返回 shop_db
SHOW DATABASES; 列出MySQL服务器中所有数据库 SHOW DATABASES; → 显示所有数据库列表
SHOW CREATE DATABASE 数据库名; 查看指定数据库的详细定义信息 SHOW CREATE DATABASE shop_db;

        示例:

       使用数据库或切换数据库到db_test

use db_test;

        查看当前正在使用的数据库

select database();

        查看Mysql中有哪些数据库

show databases;

        查看一个数据库的定义信息

show create database db_test;

3.修改数据库

命令 说明
alter database 数据库名 character set 字符集; 数据库的字符集修改操作

        示例:        

        将数据库db_test 的字符集 修改为 utf8

alter database db_test character set utf8;

        查看当前数据库的基本信息,发现编码已更改

show create database db_test;

4.删除数据库

命令 说明
drop database 数据库名 从MySql中永久的删除某个数据库

        示例:

        删除数据库db_test

drop database db_test;

三.常用数据类型

1.数值类型

分为整数类型和浮点类型

数据类型 大小 说明 对应 Java 类型
BIT[(M)] M 位(1-64) 二进制数,存储范围:0 到 2^M-1
默认 M=1(存 0/1)
Boolean
INT 4 字节 整数范围:-2³¹ 到 2³¹-1 (约 ±21 亿) Integer
DOUBLE(M, D) 8 字节 双精度浮点数,M=总位数,D=小数位 Double
DECIMAL(M, D) M/D 最大值 + 2 字节 精确小数,M=总位数,D=小数位
适合财务计算
BigDecimal

2.字符串类型

数据类型 大小 说明 对应 Java 类型
VARCHAR(SIZE) 0-65,535 字节 可变长度字符串,SIZE=最大字符数
推荐存储长度不固定的文本(如用户名)
String
TEXT 0-65,535 字节 (64KB) 存储长文本数据(如文章/评论)
不支持默认值
String

3.日期类型

数据类型 大小 说明 对应 Java 类型
DATETIME 8 字节 范围:1000-01-01 00:00:00 到 9999-12-31 23:59:59
不涉及时区转换
java.util.Date
java.sql.Timestamp
TIMESTAMP 4 字节 范围:1970-01-01 00:00:01 UTC 到 2038-01-19 03:14:07 UTC
自动时区转换
java.util.Date
java.sql.Timestamp

4.详细的数据类型

四.表的操作(DDL)

1.创建表

        创建表student 包括学号,姓名,年龄字段 ,并且使用comment关键字 给字段起别名

create table student{
    id int comment '学号',
    name varchar(20) comment '名字',
    age int comment '年龄'
};

2.查看表

命令 说明
show tables; 查看当前数据库中的所有表名
desc 表名; 查看数据表的结构

        查看表student结构

desc student;

3.修改表

        快速创建一个表结构相同的表(复制表结构)

                将student表结构复制给student1

create table student2 like student;

       修改表名 rename table 旧表名 to 新表名

                将student表 改为 student1

rename table student to student1;

        修改表的字符集 alter table 表名 character set 字符集

        将student表的字符集 修改为gbk   

alter table student character set gdk;

        向表中添加列  alert table 表名 add 字段名称 字段类型

        为student表添加一个新的字段为 学生描述 cdesc varchar(20)

ALTER TABLE student ADD cdesc VARCHAR(20);

      修改表中的列的数据类型或长度,关键字modify alter table 表名 modify 字段名称 字段类型

        对student表的age字段进行修改,类型varchar(50)

ALTER TABLE student MODIFY cdesc VARCHAR(50);

      修改列名称,关键字change alter table 表名 change 旧列名 新列名 类型(长度)

        对student表中的 age字段进行更换, 更换为 Age varchar(30)

ALTER TABLE student CHANGE cdesc description VARCHAR(30);

删除列,关键字drop alter table 表名 drop 列名;

        删除student表中description这列

ALTER TABLE student DROP description;

4.删除表

命令 说明
drop table 表名; 删除表(从数据库中永久删除某一张表)
drop table if exists 表名; 判断表是否存在, 存在的话就删除,不存在就不执行删除

        示例:

        删除表student

drop table student;

        判断表student是否存在,再删除

drop table if exists student;

        如果要删除表中的所有数据,有两种做法

                1. delete from 表名; 不推荐. 有多少条记录 就执行多少次删除操作. 效率低

                2. truncate table 表名: 推荐. 先删除整张表, 然后再重新创建一张一模一样的表. 效率高

 

truncate table 表名;

有错误的地方,大家一起指出,一起学习!!!

完结撒花,下一章内容会学习对表中的数据进行操作!


网站公告

今日签到

点亮在社区的每一天
去签到