当前位置: 首页 > 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数据库基础》就讲解到这儿,感谢大家的支持,欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下!

相关文章:

【MySQL】 MySQL数据库基础

文章目录 🐱‍👓数据库的操作📌显示当前的数据库📌创建数据库🎈语法:🎈语法说明🎈示例: 🌴使用数据库🎋删除数据库🐱‍🏍语…...

vscode 下载安装

vscode 下载安装常用插件 vscode 官网: https://code.visualstudio.com/ 点击右上角 Download 进入下载选择页面 选择自己使用操作对应 CPU 架构 下载 本文使用 x86 架构 64位 windows 系统为例 跳转下载页面 自动 开始下载 下载不开始?试试这个直…...

springboot对接postgres

安装postgres 注意:下述链接方式会自动创建数据库steven_russell,若需要创建其他数据库,可以手动执行命令创建数据库 docker run --name postgres \ -p 5432:5432 \ -e POSTGRES_USERsteven_russell \ -e POSTGRES_PASSWORD123456 \ -itd --privilegedtrue postgre…...

[python 刷题] 242 Valid Anagram

[python 刷题] 242 Valid Anagram 题目: Given two strings s and t, return true if t is an anagram of s, and false otherwise. An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the o…...

算法通过村第七关-树(递归/二叉树遍历)青铜笔记|手撕递归

文章目录 前言1. 递归的特征2. 如何写出好的递归3. 怎么看懂递归的代码总结 前言 提示:我们生活在24小时不眠不休的社会里但是没有24小时不眠不休的身体有些东西必须舍弃 -- 马特海格 这一关,我看要谈论的是递归问题,说到它就牵扯到很多问题了…...

#循循渐进学51单片机#点亮你的LED#not.2

1、深刻理解电容的意义,并且在今后的电路学习过程中要多多注意参考别人电路中去耦电路的处理方法,积累经验。 1)电容缓冲电压,抗电磁干扰; 2)低频率电容,一般用的最多的是钽电容,电…...

基于Java+SpringBoot+Vue+uniapp点餐小程序(亮点:协同过滤算法、会员系统,购物车结算、在线聊天)

校园点餐小程序 一、前言二、我的优势2.1 自己的网站2.2 自己的小程序(小蔡coding)2.3 有保障的售后2.4 福利 三、开发环境与技术3.1 MySQL数据库3.2 Vue前端技术3.3 Spring Boot框架3.4 微信小程序 四、功能设计4.1 系统功能结构设计4.2 主要功能描述 五…...

深度学习-全连接神经网络-详解梯度下降从BGD到ADAM - [北邮鲁鹏]

文章目录 参考文章及视频导言梯度下降的原理、过程一、什么是梯度下降?二、梯度下降的运行过程 批量梯度下降法(BGD)随机梯度下降法(SGD)小批量梯度下降法(MBGD)梯度算法的改进梯度下降算法存在的问题动量法(Momentum)目标改进思想为什么有效动量法还有什么效果&…...

数据结构--二叉排序树

目录 二叉排序树的定义 二叉排序树的查找 二叉排序树的插入 二叉排序树的构造 二叉排序树的删除 查找效率分析 回顾 二叉排序树的定义 二叉排序树的查找 查找成功的情况 查找失败的情况 二叉排序树的插入 注意 (1)二叉排序树不允许出现重复的值…...

Python | 根据子列表中的第二个元素对列表进行排序

在本文中,我们将学习如何根据主列表中存在的子列表的第二个元素对任何列表进行排序。 比如 Input : [[‘rishav’, 10], [‘akash’, 5], [‘ram’, 20], [‘gaurav’, 15]] Output : [[‘akash’, 5], [‘rishav’, 10], [‘gaurav’, 15], [‘ram’, 20]] Input …...

qsort函数详细讲解以及利用冒泡排序模拟实现qsort函数

个人主页:点我进入主页 专栏分类:C语言初阶 C语言程序设计————KTV C语言小游戏 C语言进阶 C语言刷题 欢迎大家点赞,评论,收藏。 一起努力,一起奔赴大厂。 目录 1.qsort函数 1.1qsort函数的参数 …...

C++QT day6

1> 将之前定义的栈类和队列类都实现成模板类 栈&#xff1a; #include <iostream> #define MAX 128 using namespace std; template<typename T> class Stack_s { private:T *pnew T[MAX];//栈的数组int top;//记录栈顶的变量 public://构造函数Stack_s(int t…...

List与ArrayList

目录 一、List及其使用 1.1 List的概念 1.2 常见接口的介绍 1.3 List的使用 二、线性表和顺序表 2.1 线性表 2.2 顺序表 三、ArrayList介绍 四、ArrayList的使用 4.1 ArrayList构造 4.2 ArrayList的常用方法 4.3 ArrayList的遍历 4.4 ArrayList的扩容机制 五、ArrayList的具…...

【C++】特殊类的设计

文章目录 1. 设计一个类, 不能被拷贝2. 设计一个类, 不能被继承3. 设计一个类, 只能在堆上创建对象3. 设计一个类, 只能在栈上创建对象4. 创建一个类, 只能创建一个对象(单例模式)饿汉模式懒汉模式 1. 设计一个类, 不能被拷贝 &#x1f495; C98方式&#xff1a; 在C11之前&a…...

机器学习:PCA(Principal Component Analysis主成分)降维

参考&#xff1a;PCA降维原理 操作步骤与优缺点_TranSad的博客-CSDN博客 PCA降维算法_偶尔努力翻身的咸鱼的博客-CSDN博客 需要提前了解的数学知识&#xff1a; 一、PCA的主要思想 PCA&#xff0c;即主成分分析方法&#xff0c;是一种使用最广泛的数据降维算法。PCA的主要思想…...

linux服务器slab缓存回收方案设计

背景 自己写的回收slab内存ko,insmod报错“shrink_slab:unknown symbol _x86_indirect_thunk_rax(err 0)””; 分析 1.名词解释 在 x86 架构中,函数调用通常使用 call 指令来直接跳转到目标函数的地址。但是,当需要通过函数指针或动态链接调用函数时,就需要使用__x86_…...

Apache Spark 的基本概念

Apache Spark 是一种快速、可扩展、通用的数据处理引擎。它是一种基于内存的计算框架&#xff0c;支持分布式数据处理、机器学习、图形计算等多种计算任务。与传统的 Hadoop MapReduce 相比&#xff0c;Spark 具有更高的性能和更广泛的应用场景。 Spark 中的基本概念包括&…...

通讯协议介绍CoAP 协议解析

目录 1 通讯协议 2 TCP/IP 网络模型 2.1 TCP协议 2.1.1 TCP 连接过程 2.1.2 TCP 断开连接 2.1.3 TCP协议特点 2.2 UDP协议 2.2.1 UDP 协议特点 3 应用层协议简介 3.1 HTTP 协议 3.2 CoAP 协议 3.3 MQTT 协议 4 CoAP 协议详解 4.1 REST 风格 4.2 CoAP 首部分析 4…...

React 开发一个移动端项目(2)

配置基础路由 目标&#xff1a;配置登录页面的路由并显示在页面中 步骤&#xff1a; 安装路由&#xff1a; yarn add react-router-dom5.3.0 5 和 6 两个版本对组件类型的兼容性和函数组件支持有所改变&#xff0c;在这里使用的是 5。 和路由的类型声明文件 yarn add types…...

51单片机 点阵矩阵 坤坤代码

真正的黑子 #include <REGX52.H>void Delay(unsigned int xms); void _74HC595_WriteByte(unsigned char byte); void LED(unsigned char Y,DATA); void LED_Init();sbit RCKP3^5; //RCLK sbit SCKP3^6; //SRCL sbit SERP3^4; //SER //坤坤矩阵 unsigned char code D…...

终极指南:如何在Windows电脑上直接安装Android应用?

终极指南&#xff1a;如何在Windows电脑上直接安装Android应用&#xff1f; 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 嘿&#xff0c;朋友&#xff01;你有没有过…...

掌控AMD Ryzen性能:5步精通SMUDebugTool硬件调试技巧

掌控AMD Ryzen性能&#xff1a;5步精通SMUDebugTool硬件调试技巧 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://git…...

AHB与APB总线桥接设计及SoC系统优化

1. AHB总线架构与APB桥接设计精要在复杂SoC设计中&#xff0c;AMBA总线作为ARM架构的核心互联标准&#xff0c;其AHB&#xff08;Advanced High-performance Bus&#xff09;与APB&#xff08;Advanced Peripheral Bus&#xff09;的协同工作直接影响系统性能。APB桥作为高低速…...

国际B2B企业平台表达框架:IBM式重构与ServiceNow式统一执行

如果把国际B2B品牌表达看成一个系统问题&#xff0c;IBM / ServiceNow这组样本可以拆成一套判断框架。它不是讨论文案怎么写&#xff0c;而是讨论输入什么业务条件&#xff0c;输出什么品牌角色、结构和证据链。框架结论&#xff1a;IBM与ServiceNow都服务企业转型&#xff0c;…...

在线考试系统如何实现随机组卷

在现代教育和企业培训中&#xff0c;考试是评估学习效果、提升培训效率的重要工具。然而&#xff0c;传统的固定试卷模式存在诸多问题&#xff1a;题目重复率高、考试公平性难以保障、人工管理成本高。随着在线培训的发展&#xff0c;尤其是在大规模培训场景下&#xff0c;随机…...

IT68353:双DP 1.4 + HDMI 2.0 转 HDMI 2.0 单芯片KVM切换方案

一、前言多主机协同办公、电竞直播、工控监控、视频会议等场景&#xff0c;对4K60Hz高画质切换、键鼠共享、Type-C一线通、多路信号兼容、极简外围的需求持续攀升。传统KVM方案普遍采用多芯片拼凑架构&#xff0c;需要DP切换芯片、HDMI切换芯片、USB Hub、PD控制器、外置MCU等多…...

嵌入式固件开发知识体系构建:从硬件交互到系统级设计

1. 固件开发者知识体系构建&#xff1a;从“会写代码”到“懂系统”干了十几年嵌入式&#xff0c;我越来越觉得&#xff0c;固件开发这行&#xff0c;光会调库、写业务逻辑是远远不够的。你写的每一行代码&#xff0c;最终都要在真实的物理世界里跑起来&#xff0c;要和传感器、…...

图片怎么去水印?2026图片去水印方法实测 + 好用工具推荐

图片怎么去水印&#xff1f;2026图片去水印方法实测 好用工具推荐 前言 日常刷图、做设计、整理相册&#xff0c;总免不了碰到这个问题&#xff1a;图片上有水印&#xff0c;该怎么去掉&#xff1f;无论是摄影平台的版权标识、相机自动打上的日期戳、App 角标&#xff0c;还是…...

Symbol Opener:基于URI与LSP实现终端代码符号一键跳转

1. 项目概述&#xff1a;一个能让你在终端里“点击”代码符号的插件 如果你和我一样&#xff0c;每天大部分时间都泡在终端里&#xff0c;那你肯定遇到过这个场景&#xff1a;运行 git log 或者 grep 命令&#xff0c;终端输出了一堆函数名、类名&#xff0c;你想立刻跳转…...

NoFences完整指南:免费开源工具彻底解决Windows桌面杂乱问题

NoFences完整指南&#xff1a;免费开源工具彻底解决Windows桌面杂乱问题 【免费下载链接】NoFences &#x1f6a7; Open Source Stardock Fences alternative 项目地址: https://gitcode.com/gh_mirrors/no/NoFences 还在为杂乱的Windows桌面图标而烦恼吗&#xff1f;No…...