MySQL 基础入门教程

news2025/4/10 22:30:29

参考视频地址:一小时MySQL教程 bilibili

SQL 基础

数据库分为关系型数据库和非关系型数据库

常见的关系型数据库:

  • MySQL、PostgreSQL、Oracle、SQL Server等。

非关系型数据库

  • MongoDB(文档型数据库)、Redis(键值型数据库)、Cassandra(列族数据库)、Neo4j(图形数据库)等。

在关系型数据库中,SQL(Structured Query Language) 语言 用于操作表中的数据,SQL 不区分大小写,但是一般来说,我们将关键字大写,表名、列名和其他名称小写。SQL 语言可以分为以下几类:

  1. DDL (Data Definition Language) 数据定义语言: CREATEDROPALTERTRUNCATE
  2. DML (Data Manipulation Language) 数据操作语言: INSERTUPDATEDELETECALL
  3. DQL (Data Query Language) 数据查询语言: SELECT
  4. DCL (Data Control Language) 数据控制语言: GRANTREVOKE
  • 数据库(database):保存有组织的数据的容器(通常是一个文件或一组文件)
  • 表(table):某种特定类型数据的结构化清单
  • 模式(schema):关于数据库和表的布局及特性的信息
  • 列(column):表中的一个字段。所有表都是有一个或多个列组成的
  • 数据类型(datatype):每个表列都有相应的数据类型
  • 行(row):表中的一个记录
  • 主键(primary key):一列(或一组列),其值能够唯一区分表中的每个行

SQL 数据类型

一、整数类型

  • INT:用于存储整数数据(4个字节)。
  • SMALLINT:存储范围较小的整数(2个字节)。
  • TINYINT:存储范围更小的整数
  • BIGINT:用于存储非常大的整数(8个字节)。

二、浮点类型

  • FLOAT:用于存储单精度浮点数。
  • REAL:在某些数据库系统中,REAL是FLOAT的同义词,或用于表示另一种浮点类型。
  • DOUBLE:用于存储双精度浮点数,精度高于FLOAT。

三、字符数据类型

  • CHAR(n):固定长度字符数据,n表示字符数。
  • VARCHAR(n):可变长度字符数据,n表示最大字符数,节省存储空间。
  • TEXT:用于存储大量文本数据,长度通常超过VARCHAR的限制。

四、Unicode数据类型

  • NCHAR(n):固定长度Unicode字符数据,n表示字符数。
  • NVARCHAR(n):可变长度Unicode字符数据,n表示最大字符数。
  • NTEXT:用于存储大量Unicode文本数据。

五、日期和时间数据类型

  • DATE:仅存储日期。
  • TIME:仅存储时间。
  • DATETIME:存储日期和时间。
  • TIMESTAMP:存储时间戳,通常用于记录时间变更或事件。

六、数值类型

  • NUMERIC(p, s)DECIMAL(p, s):用于精确存储小数数据,p表示总位数,s表示小数点后位数。

七、货币数据类型

  • MONEY:用于存储货币数据,通常要求8个存储字节。
  • SMALLMONEY:用于存储较小范围的货币数据,通常要求4个存储字节。

八、二进制数据类型

  • BINARY(n):固定长度二进制数据,n表示字节数。
  • VARBINARY(n):可变长度二进制数据,n表示最大字节数。
  • BLOB(Binary Large Object):用于存储大量二进制数据,如图片、音频、视频文件等。

九、其他数据类型

  • BOOLBOOLEAN:用于存储逻辑真或假,值通常为TRUE或FALSE,1或0。
  • ENUM:枚举类型,用于存储一组预定义的值。
  • ARRAYSETJSON等集合类型:用于存储一组数据。

需要注意的是,不同的数据库管理系统(如MySQL、PostgreSQL、SQL Server等)可能支持的数据类型及其特性略有差异。因此,在选择数据类型时,应参考具体数据库系统的文档和指南。

创建数据库

显示当前所有数据库:SHOW DATABASES;

创建数据库:CREATE DATABASE [name];

删除数据库:DROP DATABASE [name];

使用数据库:USE DATABASE [name];

创建表

显示数据库内的表:SHOW TABLES;

显示列:SHOW COLUMNS FROM [tablename];

创建表:

CREATE TABLE player(
    id INT,
    name VARCHAR(10),
    level INT,
    exp INT,
    gold DECIMAL(10,2)
)

显示表的信息:DESC player 或者 DESCRIBE player

修改表结构,使用 ALTER 语句:

  • 修改现有字段: ALTER TABLE player MODIFY COLUMN name VARCHAR(8);ALTER TABLE player MODIFY COLUMN level INT DEFAULT 1;

  • 增加字段:ALTER TABLE player ADD COLUMN last_login DATETIME;

  • 删除字段:ALTER TABLE player DROP COLUMN last_login;

删除表:DROP TABLE [table_name];

重命名表:RENAME TABLE [last_name] TO [current_name];

增删改查

查询关键字:SELECT

查询语句一般格式:SELECT [column_name] FROM [table_name] LIMIT [start_line_num, total_line_nums];

通配符*可以用于检索所有列:SELECT * FROM [table_name]

ORDER BY 子句用于对检索出的数据进行排序,DESC 用于降序排序,ASC 用于升序排序

SELECT 子句顺序:

  1. SELECT
  2. FROM
  3. WHERE
  4. GROUP BY
  5. HAVING
  6. ORDERED BY
  7. LIMIT

增加关键字:INSERT

修改关键字:UPDATE

删除关键字:DELETE

数据导入导出

数据导出:mysqldump

数据导入:

过滤数据

WHERE 关键字:SELECT [column_name1] FROM [table_name] WHERE [column_name2] IS NULL AND [column_name3] <= 3;

分组数据

GROUP BY 子句和 HAVING 子句;

子查询

表关联

索引

视图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2198540.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

1.9 电子商城测试分析

欢迎大家订阅【软件测试】 专栏&#xff0c;开启你的软件测试学习之旅&#xff01; 文章目录 前言1 测试流程2 下单业务测试分析3 单功能测试分析3.1 登录单功能测试分析3.2 购物车单功能测试分析3.3 支付单功能测试分析 4 Web项目非功能测试 前言 电子商城作为一个电子商务平…

Elsevier(爱思唯尔)的Latex模板使用指南以及图、表、文献引用细节

目录 1.模板下载链接 2.模板文件说明与打开方法 2.1.模板文件说明 2.2.模板打开方法 3.模板使用快速入手 3.1.第一部分&#xff1a;导言区 3.1.1.\documentclass 3.1.2.\usepackage 3.1.3.\journal 3.1.4.\captionsetup 3.1.5.\newcommand 3.2.第二部分&#xff1a…

Stable Diffusion绘画 | 人物、场景、3D转手绘线稿

人物线稿 第1步&#xff0c;输入线稿生成必备的提示词&#xff1a; 第2步&#xff0c;开启 ControlNet&#xff0c;加载需要转绘的图片&#xff0c;控制类型选择「SoftEdge」&#xff0c;预处理器选择「softedge_hed」&#xff1a; 第3步&#xff0c;添加一个线稿 LoRA&#x…

search

search problems video link Harvard Machine Learning Frontier 在计算机科学和算法领域&#xff0c;frontier&#xff08;前沿&#xff09;通常指的是在某些搜索或遍历算法中的边界节点集合&#xff0c;这些节点是当前探索到的但还没有被完全处理的节点。前沿的概念常出现在…

WinCC7.5 将归档数据打印到MSFlexGrid控件

第一种方法&#xff1a; WinCC7.5 将归档数据打印到MSHGrid控件 https://blog.csdn.net/weixin_37928884/article/details/134170305 第二种方法&#xff1a; MSFlexGrid控件 查询按钮 Sub OnClick(ByVal Item) …

Airplane.dev 2024年3月关闭之感

airplane 这个云服务产品可能很多人都没有用过。 我们使用的原因是&#xff0c;先前公司非常喜欢使用 airplane 来给运行给已有的产品打运行时补丁。 前公司的策略就是当发现一个问题可能涉及到数据库的不一致性&#xff0c;那么解决方案就是定时运行一套 SQL 来让数据库保持…

MHAD数据集:由京东健康、华中科技大学和浙江大学联合收集,最全面包含多角度、多活动和多生理信号的家庭视频生理学数据集

2024-08-30&#xff0c;由京东健康、华中科技大学和浙江大学联合收集的第一个真实家庭环境中的多模态数据集MHAD&#xff0c;包含不同拍摄角度和各种家庭场景。它包含了迄今为止最全面的生理信号&#xff0c;是计算机视觉、机器学习和生物医学工程等多个学术研究领域的宝贵资源…

计算机毕业设计Tensorflow交通标志识别检测 车流量预测 车速检测 自动驾驶 机器学习 深度学习 人工智能 PyTorch 大数据毕设

《Tensorflow交通标志识别检测》开题报告 一、研究背景及意义 随着智能交通系统和无人驾驶技术的快速发展&#xff0c;交通标志识别系统成为智能驾驶系统的重要组成部分。传统的交通标志识别方法主要依赖于人工检查和识别&#xff0c;存在效率低下、易受主观因素影响等问题。…

js基础速成12-正则表达式

正则表达式 正则表达式&#xff08;Regular Expression&#xff09;或 RegExp 是一种小型编程语言&#xff0c;有助于在数据中查找模式。RegExp 可以用来检查某种模式是否存在于不同的数据类型中。在 JavaScript 中使用 RegExp&#xff0c;可以使用 RegExp 构造函数&#xff0…

髓质脊髓三叉神经核文献阅读笔记

文献阅读 1.RNA-seq 对于大量RNA测序&#xff0c;收集第30天的类器官。使用FastPure细胞/组织总RNA分离试剂盒根据制造商的方案提取总RNA。采用Nanodrop 2000分光光度计测定RNA浓度和纯度。使用Agilent 2100生物分析仪和2100 RNA纳米6000检测试剂盒评估RNA样品的完整性。简单…

自动驾驶系列—从IMU到惯性定位算法:自动驾驶精准定位的幕后科技

&#x1f31f;&#x1f31f; 欢迎来到我的技术小筑&#xff0c;一个专为技术探索者打造的交流空间。在这里&#xff0c;我们不仅分享代码的智慧&#xff0c;还探讨技术的深度与广度。无论您是资深开发者还是技术新手&#xff0c;这里都有一片属于您的天空。让我们在知识的海洋中…

使用Git生成SSH密钥教程(附Git常用命令)

一、为什么使用SSH&#xff1f; 使用 Git 的 SSH&#xff08;安全外壳协议&#xff09;主要有以下几个原因&#xff1a;1. 安全性&#xff1a;SSH 是一种加密的网络协议&#xff0c;用于在网络中安全地运行网络服务。使用 SSH&#xff0c;所有传输的数据都会被加密&#xff0c…

FreeRTOS——系统配置文件FreeRTOSConfig.h详解

FreeRTOSConfig.h配置文件作用&#xff1a;对FreeRTOS进行功能配置和裁剪&#xff0c;以及API函数得使能。 FreeRTOSConfig.h 是一个用户级别的配置文件&#xff0c;不属于内核文件。每个用户可以有不同的FreeRTOSConfig.h&#xff0c;从而实现不同的功能配置。 对于FreeRTOS配…

C++ static静态

个人主页&#xff1a;Jason_from_China-CSDN博客 所属栏目&#xff1a;C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目&#xff1a;C知识点的补充_Jason_from_China的博客-CSDN博客 概念概述 用 static 修饰的成员变量&#xff0c;称之为静态成员变量&#xff0c;静态成…

车辆重识别(2021NIPS无分类器扩散指南)论文阅读2024/10/08

什么叫做有条件和无条件的扩散模型&#xff1f; FID是什么&#xff1f; IS是什么&#xff1f; λ是给出的参数&#xff0c;就像去噪扩散模型中每个时间步的β一样&#xff0c;每一时间步的λ都会给出。对于是否有条件信息c的概率 我的意思是在每一个训练轮次中&#xf…

一个适用于 ASP.NET Core 的轻量级插件框架

前言 今天大姚给大家分享一个适用于 ASP.NET Core 的轻量级插件框架&#xff0c;简单配置&#xff0c;开箱即用&#xff1a;PluginCore。 项目概述 PluginCore 是一个基于 ASP.NET Core 的轻量级插件框架&#xff0c;旨在简化插件的集成与管理。通过最少的配置&#xff0c;开…

wps文本框文字居中对齐

直接点对齐里的水平居中&#xff0c;垂直居中是将文本框水平垂直居中&#xff0c;文字不会居中 将文本框里的文字居中&#xff1a; 垂直居中&#xff1a; 水平居中&#xff1a;

基于SpringBoot的校园健康信息管理系统

第1章 绪论 1.1背景及意义 随着社会的快速发展&#xff0c;计算机的影响是全面且深入的。人们生活水平的不断提高&#xff0c;日常生活中人们对医院管理方面的要求也在不断提高&#xff0c;由于老龄化人数更是不断增加&#xff0c;使得师生健康信息管理系统的开发成为必需而且紧…

前端反接保护:实用方案解析与探讨

前端反接保护通常采用肖特基二极管方案或PMOS/NMOS方案&#xff0c;本文另外介绍一种理想二极管方案。 1、肖特基二极管方案 由于肖特基二极管具有正向导通电压&#xff0c;只能用于小电流场合&#xff0c;甚至于直接使用普通的整流二极管。比如1A电流&#xff0c;设D1的正向…

笔记整理—linux进程部分(9)互斥锁

互斥锁也叫互斥量&#xff0c;可以看作一种特殊的信号量。信号量可以>0&#xff0c;大家可以排队使用信号量&#xff0c;互斥锁只有0、1&#xff0c;主要实现关键段保护&#xff0c;只能在某一时间给某一任务去调用这段资源&#xff0c;这段内容用之前上锁&#xff0c;用完时…