MySQL的学习笔记

一、MySQL的安装

https://www.bilibili.com/video/BV1Xh411H7xG

二、数据库的基本操作

2.1、数据库的创建:create database 数据库名;

注意事项:1、创建数据库的时候,数据库的名字不能和mysql中的关键字重复。

2、创建的数据库的名字也不能与已有的数据库名字重复。

2.2、数据库的查看:show databases;

2.3、创建数据库的时候指定数据库的字符集:create database 数据库名 charset 字符集;

我们常见的编码方案:

1、gbk

2、utf8

2.4、创建数据库的时候,通过指定一个简单的条件判断是否创建。

例如:if not exists的作用:如果不存在就创建,如果存在就不创建。

2.5、查看数据库的报错:show warnings;

2.6、数据库的删除:drop database 数据库名;

2.7、数据库的选中:use 数据库名;

三、数据表的操作

3.1、mysql支持的数据类型:

数字:

日期和时间:

字符串:

我们经常用到的类型:

3.1.1、int 和bigint(一般我们计算钱的时候用的是int换算单位。)

3.1.2、double(double(3,1)表示的是算上小数点后一共三位,小数点后一位,例如99.1)

与其相同的是decimal但速度就慢很多了,java提供了二bigdecimal。

3.1.3、varchar

3.1.4、text

3.1.5、datetime

3.2、创建表:create table 表名(列名 类型,列名 类型......)

3.3、展示表:show tables;

3.4、mysql的注释情况

1.--是mysql的注释方式

2.#是注释

以上两种是较为推荐的,还有一种是不推荐的,comment 是注释,只能在建表语句中使用,用来描述每个列是啥意思。

查看指定表的详细情况:desc 表名;

desc是describe的缩写,type是类型,null是是否允许为空,default为默认值

3.5、删除表(很危险建议不要操作)drop table 表名;

四、表内容的操作

增删改查

crud

c=>create

r=>retrieve

u=>update

d=>delete

4.1、新增

4.1.1、insert into 表名 value(值......)

4.1.2、insert into 表名(列名,列名......) value(值,值......);

4.1.3、insert 表名 values(值,值......),(值,值......);

4.1.4、插入时间:insert into 表名 values('2024-05-11 20:55:33')

4.2、查看

4.2.1、查看全部列:select *from 表名;(不建议用,容易崩溃)

4.2.2:指定列查看:select 列名,列名......from 表名;

4.2.3、查询的 时候指定表达式:select 表达式 from 表名;(这些操作并不会修改原表格的数据)

4.2.4、查询的时候进行别名:select 表达式 as 别名 from 表名;(as可以省略但是不建议)

4.2.5去重查询:select distinct 列名 from 表名;(去重只针对临时表不会对硬盘上的数据进行操作)

4.2.6、排序查询:select ......order by 列名 desc/asc;(desc是降序,asc则是升序,desc是descend的缩写)

先不写了,下次继续。

相关推荐
个 人 练 习 生4 分钟前
C++中的内存管理
开发语言·c++·经验分享·学习
bksczm7 分钟前
MySQL进阶篇之范式及E-R图
数据库·sql·mysql
江湖人称菠萝包11 分钟前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter11-数据库
笔记·qt·qt5
浩瀚地学37 分钟前
deepagents学习打卡day08
经验分享·笔记·python·学习·agent
艾莉丝努力练剑1 小时前
【AI大模型接入SDK】ChatSDK整体实现
网络·c++·人工智能·学习·架构
励志不掉头发的内向程序员1 小时前
【从零写一个CAD 02】画完第一条线之后:实体容器、Esc 取消,和按了没反应的键盘
开发语言·c++·qt·学习·系统架构
Shadow(⊙o⊙)1 小时前
表的增删查改
数据库·mysql
摇滚侠1 小时前
《On Java 中文版 基础卷》阅读笔记 安装 Java 和本书示例 02
java·开发语言·笔记
艾莉丝努力练剑1 小时前
【AI大模型接入SDK】ChatSDK架构设计与实现
网络·c++·人工智能·学习·语言模型
FYKJ_20102 小时前
springboot刑事案件管理系统03047-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django