当前位置: 首页 > news >正文

【MySQL】 MySQL数据库基础

文章目录

  • 🐱‍👓数据库的操作
    • 📌显示当前的数据库
    • 📌创建数据库
      • 🎈语法:
      • 🎈语法说明
      • 🎈示例:
    • 🌴使用数据库
    • 🎋删除数据库
      • 🐱‍🏍语法
      • 🚨说明
  • 🐱‍👤常用数据类型
    • 🌳数值类型
      • 🧭内容扩展:
    • 🎄字符串类型
    • 🌲日期类型
  • 🐱‍🐉表的操作
    • 🚩查看表结构
    • 🚩创建表
      • ⚾语法:
      • ⚾示例:
    • 🚩删除表
      • 🏀语法格式
      • 🏀示例
  • 🎡内容重点总结
  • 🍀练习
  • ⭕总结

🎄本节目标:

  • 🚩数据库的操作:创建数据库、删除数据库

  • 🚩常用数据类型

  • 🚩表的操作:创建表、删除表

🐱‍👓数据库的操作

📌显示当前的数据库

SHOW DATABASES;

使用如下:

在这里插入图片描述

📌创建数据库

🎈语法:

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] ...]create_specification:[DEFAULT] CHARACTER SET charset_name[DEFAULT] COLLATE collation_name

🎈语法说明

  • 大写的表示关键字

  • [] 是可选项

  • CHARACTER SET: 指定数据库采用的字符集

  • COLLATE: 指定数据库字符集的校验规则

🎈示例:

  • 🛫创建名为 db_test1 的数据库
    CREATE DATABASE db_test1;

说明:
说明:当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则是:
utf8_ general_ ci

  • 🛫如果系统没有 db_test2 的数据库,则创建一个名叫 db_test2 的数据库,如果有则不创建
    CREATE DATABASE IF NOT EXISTS db_test2;

  • 🛫如果系统没有 db_test 的数据库,则创建一个使用utf8mb4字符集的 db_test 数据库,如果有则
    不创建
    CREATE DATABASE IF NOT EXISTS db_test CHARACTER SET utf8mb4

说明:
MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。
MySQL真正的utf8是使用utf8mb4,建议大家都使用utf8mb4

🌴使用数据库

use 数据库名;

🎋删除数据库

🐱‍🏍语法

DROP DATABASE [IF EXISTS] db_name;

🚨说明

数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除

drop database if exists db_test1;
drop database if exists db_test2;

🐱‍👤常用数据类型

🌳数值类型

在这里插入图片描述

🧭内容扩展:

数值类型可以指定为无符号(unsigned),表示不取负数
1字节(bytes)= 8bit。

对于整型类型的范围:

  1. 有符号范围:-2(类型字节数*8-1)到2(类型字节数*8-1)-1,如int是4字节,就
    是-231到231-1
  2. 无符号范围:0到2(类型字节数*8)-1,如int就是232-1

尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其
如此,还不如设计时,将int类型提升为bigint类型。

🎄字符串类型

在这里插入图片描述

🌲日期类型

在这里插入图片描述

🐱‍🐉表的操作

需要操作数据库中的表时,需要先使用该数据库

🚩查看表结构

desc 表名;

示例:
在这里插入图片描述

🚩创建表

⚾语法:

CREATE TABLE table_name (field1 datatype,field2 datatype,field3 datatype
);

⚾示例:

可以使用comment增加字段说明

create table stu_test (id int,name varchar(20) comment '姓名',password varchar(50) comment '密码',age int,sex varchar(1),birthday timestamp,amout decimal(13,2),resume text
);

结果展示:
在这里插入图片描述

补充说明:comment这个注释并不好用
更推荐使用 --加空格来表示注释
create table student(name varchar(20)); -- 创建学生表

🚩删除表

🏀语法格式

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

🏀示例

-- 删除 stu_test 表
drop table stu_test;
-- 如果存在 stu_test 表,则删除 stu_test 表
drop table if exists stu_test;

🎡内容重点总结

  • 操作数据库

– 显示
show databases;
– 创建
create database xxx;
– 使用
use xxx;
– 删除
drop database xxx;

  • 常用数据类型:

INT:整型
DECIMAL(M, D):浮点数类型
VARCHAR(SIZE):字符串类型
TIMESTAMP:日期类型

  • 操作表:
-- 查看
show 表;-- 创建
create table 表名(字段1 类型1,字段2 类型2,
...
);-- 删除
drop talbe 表名;

🍀练习

有一个商店的数据,记录客户及购物情况,有以下三个表组成:

  • 商品goods(商品编号goods_id,商品名goods_name, 单价unitprice, 商品类别category, 供
    应商provider)

  • 客户customer(客户号customer_id,姓名name,住址address,邮箱email,性别sex,身份证
    card_id)

  • 购买purchase(购买订单号order_id,客户号customer_id,商品号goods_id,购买数量nums)

SQL语句如下:

-- 创建数据库
create database bit32mall;
-- 选择数据库
use bit32mall;-- 创建数据库表-- 商品
create table if not exists goods
(
goods_id int -- '商品编号',
goods_name varchar(32) -- '商品名称',
unitprice int -- '单价,单位分',
category varchar(12) -- '商品分类',
provider varchar(64) -- '供应商名称'
);-- 客户
create table if not exists customer
(customer_id int -- '客户编号',name varchar(32) -- '客户姓名',address varchar(256) -- '客户地址',email varchar(64) -- '电子邮箱',sex bit -- '性别',card_id varchar(18) -- '身份证'
);-- 购买
create table if not exists purchase
(order_id int -- '订单号',customer_id int -- '客户编号',goods_id int -- '商品编号',nums int -- '购买数量'
);

⭕总结

关于《【MySQL】 MySQL数据库基础》就讲解到这儿,感谢大家的支持,欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下!

http://www.lryc.cn/news/168683.html

相关文章:

  • vscode 下载安装
  • springboot对接postgres
  • [python 刷题] 242 Valid Anagram
  • 算法通过村第七关-树(递归/二叉树遍历)青铜笔记|手撕递归
  • #循循渐进学51单片机#点亮你的LED#not.2
  • 基于Java+SpringBoot+Vue+uniapp点餐小程序(亮点:协同过滤算法、会员系统,购物车结算、在线聊天)
  • 深度学习-全连接神经网络-详解梯度下降从BGD到ADAM - [北邮鲁鹏]
  • 数据结构--二叉排序树
  • Python | 根据子列表中的第二个元素对列表进行排序
  • qsort函数详细讲解以及利用冒泡排序模拟实现qsort函数
  • C++QT day6
  • List与ArrayList
  • 【C++】特殊类的设计
  • 机器学习:PCA(Principal Component Analysis主成分)降维
  • linux服务器slab缓存回收方案设计
  • Apache Spark 的基本概念
  • 通讯协议介绍CoAP 协议解析
  • React 开发一个移动端项目(2)
  • 51单片机 点阵矩阵 坤坤代码
  • Android13-图片视频选择器
  • 【问题处理】GIT合并解决冲突后,导致其他人代码遗失的排查
  • H264视频压缩格式
  • 动态的中秋爱心演示送女友用python生成爱心软件文末附c++语言写法
  • macOS - 使用VLC
  • java微服务项目整合skywalking链路追踪框架
  • pandas 笔记: interpolate
  • 应用程序接口(API)安全的入门指南
  • JavaWeb概念视频笔记
  • 网络请求【小程序】
  • python 调用adb shell