首页 > 数据库 >MYSQL学习笔记(一):准备数据和数据库的最基本命令

MYSQL学习笔记(一):准备数据和数据库的最基本命令

时间:2025-01-14 23:00:31浏览次数:3  
标签:语句 数据库 MYSQL 使用 笔记 命令 SQL test

前言

  • 学习和使用数据库可以说是程序员必须具备能力,这里将更新关于MYSQL的使用讲解,大概应该会更新30篇+,涵盖入门、进阶、高级(一些原理分析);
  • 这一篇是入门准备数据和一些关于数据库的操作命令
  • 虽然MYSQL命令很多,但是自己去多敲一点,到后面忘记了,查一下就可以回忆起来使用了;
  • 这一系列也是本人学习MYSQL做的笔记,也是为了方便后面忘记查询;
  • 参考资料:尚硅谷、黑马、csdn和知乎博客;
  • 欢迎收藏 + 关注,本人将会持续更新。

文章目录


课程使用数据文件: 后台私信获取。

准备测试数据

要学习SQL查询语句,首先必须解决一个问题,数据问题。

为了方便大家学习,在视频目录中提供了一个test.sql文件。

登录MySQL,输入source xxx/test.sql导入sql文件,sql文件实际上是一个脚本文件,里面有多行SQL语句,通过source命令可以批量执行。

在这里插入图片描述

执行完毕之后,使用show databases;查看所有数据库,发现多了一个名为test的数据库。

在这里插入图片描述

使用show tables;查看test数据库下所有的数据表,发现有四个表。

在这里插入图片描述

test数据库表

以后讲解SQL语句的时候,主要使用的是test数据库下的四张表,所以首先就必须对这些表的作用以及列的数据类型做一个基本的了解。

在这里插入图片描述

部门表:dept

No.字段名类型描述
1DEPTNOSMALLINT部门编号
2DNAMEVARCHAR(14)部门名称,最多14个字符
3LOCVARCHAR(13)部门位置,最多13个字符

在这里插入图片描述

相关英语翻译:

  • accounting 会计 new york 纽约
  • research 研究员 dallas 达拉斯
  • sales 销售 chicago 芝加哥
  • operarions 运营 boston 波士顿

雇员表:emp

No.字段名类型描述
1EMPNOSMALLINT雇员编号
2ENAMEVARCHAR(10)雇员姓名
3JOBVARCHAR(9)职位(工作)
4MGRSMALLINT一个员工对应的领导编号,领导也是雇员
5HIREDATEDATE雇佣日期
6SALDECIMAL(7,2)基本工资
7COMMSMALLINT佣金(奖金),销售人员可以领取
8DEPTNOSMALLINT雇员所属部门编号,与dept表对应

在这里插入图片描述

相关英语翻译:

  • clerk 店员

  • salesman 售货员

  • manager 经理

  • analyst 化验员

  • president 董事长

工资等级表:salgrade

No.字段名类型描述
1GRADESMALLINT工资等级编号
2LOSALSMALLINT此等级的最低工资
3HISALSMALLINT此等级的最高工资

在这里插入图片描述

工资补贴表(工资条):bonus

No.字段名类型描述
1ENAMEVARCHAR(10)雇员姓名
2JOBVARCHAR(9)工作
3SALDECIMAL(7,2)基本工资
4COMMSMALLINT佣金

SQL语句规范

使用SQL语句请遵循以下规范:

  • SQL语句不区分大小写。但字符串常量区分大小写,建议命令大写,表名库名小写
  • SQL语句可单行或多行书写,以分号结尾;
  • 空格和缩进来提高语句的可读性。
  • 注释:有三种风格的注释
    1. 单行注释可以用“#”
    2. 单行注释第二种写法用“-- ”,“–" 与注释之间是有空格的。
    3. 多行注释可以用/* */

数据库的基本操作

  • 登录MYSQL, 命令:【-h主机名 -P端口号 】-u用户名 -p密码

在这里插入图片描述

  • 查看所有数据库:
# 命令
SHOW DATABASES;
# 默认有四个:
+--------------------+
| Database           |
+--------------------+
| information_schema |		#主要存储了系统中的一些数据库对象信息,比如用户表信息、列信息、权限信息、字符集信息和分区信息等。
| mysql              |		#MySQL的核心数据库,主要负责存储数据库用户、用户访问权限等 MySQL 自己需要使用的控制和管理信息。
| performance_schema |		#主要用于收集数据库服务器性能参数。
| sys                |		#sys 数据库主要提供了一些视图,数据都来自于 performation_schema,主要是让开发者和使用者更方便地查看性能问题。
+--------------------+
  • 选定使用不同的数据库,或者切换不同数据库,基本语法:
USE <dbname>;
  • 查看当当前使用的是哪个数据库,命令来查看:
SELECT DATABASE();
  • 在一个数据库下一定会存在多张数据表,查看所有表命令:
SHOW TABLES;  # 注意有s,就好记住了
  • 查询某些数据表的表结构,那么可以使用DESC命令:
DESC t_dept;

# 效果
mysql> desc t_dept;      # 后续参数是什么意思,后面讲解                                                                                                
+--------+-------------+------+-----+---------+----------------+                                                        
| Field  | Type        | Null | Key | Default | Extra          |                                                        
+--------+-------------+------+-----+---------+----------------+                                                        
| deptno | int         | NO   | PRI | NULL    | auto_increment |                                                        
| dname  | varchar(14) | YES  |     | NULL    |                |                                                        
| loc    | varchar(13) | YES  |     | NULL    |                |                                                        
+--------+-------------+------+-----+---------+----------------+                                                        
3 rows in set (0.00 sec)                                                                   
  • 创建数据库,则需要使用以下命令:
CREATE DATABASE <dbname>;

注意:如果数据库已经存在则会报错 Can't create database '<dbname>'; database exists,但是可以先判断是否存在,命令如下:

CREATE DATABASE IF NOT EXISTS  <dbname>;
  • 删除数据库,则可以使用以下命令:
DROP DATABASE <dbname>;

注意: 如果数据库已经删除则会报错Can't drop database 'ss'; database doesn't exist,故,也可以使用一下命令先判断。

DROP DATABASE IF EXISTS <dbname>;	#如果数据库存在则删除

注意: 删除慎用

标签:语句,数据库,MYSQL,使用,笔记,命令,SQL,test
From: https://blog.csdn.net/weixin_74085818/article/details/145149222

相关文章

  • pyqt+mysql实现学生学籍管理系统(带.sql和.ui文件)
    所有文件已经上传至https://github.com/shuimqy/Student-Information-Management-System-implemented-with-Qt.git需要的话可自行下载,自己写的数据库大作业,尽量不要照搬提交。如果对你有帮助的话,点个赞吧,有问题欢迎留言!下面是我的涉及过程即设计报告。需求分析概念结构......
  • 【研发笔记20251114】技术自信 &
    技术自信我们要拥有技术自信!我们许多同学,是缺乏技术自信的。我们习惯了代码有改动,就提测给测试组的同学来进行测试验证。虽说有测试组,但有些开发改动,我们开发者,凭借我们的专业能力(技术能力),可以自己确信没有问题,可以不用一律提测。例如:重命名一个底层工具类的publicstatic方......
  • 《CPython Internals》阅读笔记:p151-p151
    《CPythonInternals》学习第9天,p151-p1510总结,总计1页。一、技术总结无。二、英语总结(生词:1)1.marshal(1)marshalingMarshallingormarshaling(USspelling)istheprocessoftransformingthememoryrepresentationofanobjectintoadataformsuitablefo......
  • 1、Grafana学习笔记
    Grafana是一个开源的数据可视化和分析平台,是网络架构和应用分析中最流行的时序数据展示工具,专门用于帮助用户实时监控和分析各种数据源(如时序数据、日志数据等)。Grafana被广泛应用于系统监控、性能分析、业务指标追踪等场景,特别是在DevOps、IT运维和数据分析领域中。一、Grafa......
  • 【学习笔记】函数复合:[PKUSC 2024] 排队
    函数复合是这样的一类问题:有一个函数序列\(f_1,f_2,f_3,...,f_n\)。离线询问,给定参数\(x\),\(f_r(f_{r-1}(...f_l(x)))\)的值。有点抽象对吧。看道题就懂了。[PKUSC2024]排队QOJ题目链接:#8672.排队。(反正我在其他OJ上没找到)前置知识:平衡树题面上有简化题意,但......
  • MySQL基础 数据库表的增删改
    Mysql数加科技整理一、原理定义概念定义数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。数据库是长期储存在计算机内、有组织的、可共享的数据集合。分类:​ 非结构化数据:​ 数据相对来讲没有固定的特点,这种数据非常不便于检索......
  • MySQL基础函数使用
    DQL中的函数#官方函数链接https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_date-format4.1 单行函数函数都是数据库提前给我们准备好的,所以我们可以直接调用,使用函数可以让指定的列计算出我们需要的数据单行函数:指的是操作一行数据返......
  • WebScoket学习笔记
    WebScoket学习笔记1.消息推送常用方式介绍轮询浏览器以指定的时间间隔向服务器发出HTTP请求,服务器实时返回数据给浏览器。长轮询浏览器发出ajax请求,服务器端接收到请求后,会阻塞请求直到有数据或者超时才返回。SSEserver-sent-event:服务器发送事件SSE是在服务器和客户......
  • JSP连锁洗衣店管理系统svhw2(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表技术要求:开发语言:JSP前端使用:HTML5,CSS,JSP动态网页技术后端使用SpringBoot,Spring技术主数据库使用MySQL开题报告内容一、项目背景随着生活节奏的加快,连锁......
  • JSP离退休管理系统7z292--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表技术要求:开发语言:JSP前端使用:HTML5,CSS,JSP动态网页技术后端使用SpringBoot,Spring技术主数据库使用MySQL开题报告内容一、研究背景与意义随着人口老龄化趋......