开学实验里要用到mysql,忘记基本的select语句怎么玩啦?补救来啦(1)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 开学实验里要用到mysql,忘记基本的select语句怎么玩啦?补救来啦(1)

SQL语句的分类


SQL语言按照功能分,上主要分为如下3大类:

1、DDL(Data Definition Languages、数据定义语言),这些语句定义了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构。主要的语句关键字包括CREATE 、DROP 、ALTER 等。


2、DML(Data Manipulation Language、数据操作语言),用于添加、删除、更新和查询数据库记录,并检查数据完整性。主要的语句关键字包括INSERT 、DELETE 、UPDATE 、SELECT 等。SELECT是SQL语言的基础,最为重要。


3、DCL(Data Control Language、数据控制语言),用于定义数据库、表、字段、用户的访问权限和安全级别。主要的语句关键字包括GRANT 、REVOKE 、COMMIT 、ROLLBACK 、SAVEPOINT 等


了解:


因为查询语句使用的非常的频繁,所以也有人把查询语句单拎出来一类,叫做:DQL(数据查询语言)。

还有单独将COMMIT 、ROLLBACK 取出来称为TCL (Transaction Control Language,事务控制语言)。


SQL语言的规则与规范


基本规则


1、SQL 可以写在一行或者多行。为了提高可读性,各子句分行写,必要时使用缩进

2、每条命令以 ; 或 \g 或 \G 结束

3、关键字不能被缩写也不能分行

4、关于标点符号:


必须保证所有的括号()、单引号’'、双引号""是成对结束的

必须使用英文状态下的半角输入方式

字符串型和日期时间类型的数据可以使用单引号(’ ')表示

列的别名,尽量使用双引号(" "),而且不建议省略as


SQL大小写规范 (建议遵守)


MySQL 在 Windows 环境下是大小写不敏感的

MySQL 在 Linux 环境下是大小写敏感的


正是因为两种开发环境下,对于大小写的敏感度不同,为了防止自己习惯了windows环境下的写法,在Linux开发的时候就可能会尴尬了,所以建议遵守。


下面罗列了那些需要严格区分大小写:

数据库名、表名、表的别名、变量名是严格区分大小写的

关键字、函数名、列名(或字段名)、列的别名(字段的别名) 是忽略大小写的。


随着开发的深入,工程师们也潜移默化的形成了属于这个圈子中的一些规则:

数据库名、表名、表别名、字段名、字段别名等都小写

SQL的关键字、函数名、绑定变量等都大写


注释


注释了,是每种开发语言中都会有的内容,对于SQL也是这种的,因为它们方便了我们对代码的理解。

单行注释:#注释文字(MySQL特有的方式)

单行注释:-- 注释文字(- -后面必须包含一个空格。)

多行注释:/* 注释文字 */


命名规则


SQL的命名规则和其他编程语言的命名规则要求是差不多的,相信大多数人已经耳熟能详了。


1、数据库、表名不得超过30个字符,变量名限制为29个

2、必须只能包含 A–Z, a–z, 0–9, _ 共63个字符

3、数据库名、表名、字段名等对象名中间不要包含空格

4、同一个MySQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名


这里额外阐释一点特殊的:


必须保证我们使用的字段中,没有和保留字、数据库系统或常用方法冲突。如果坚持使用,要在SQL语句中使用`(着重号)引起来

# order是sql中一个常用命令order by中的一部分
SELECT * from `order`;

数据导入指令——了解


命令行的导入和导出


命令行下进行sql文件的导出:


1、指定一个存放sql文件的文件夹

如: E:\Study\MyDB

导出数据库文件:mysqldump -u 用户名 -p 数据库名 -P 端口号> 导出的文件名

如我输入的命令行的代码为:mysqldump -u root -p test -P 3306>test.sql (回车,输入MySQL的密码)


倘若要导出数据库中指定的表: 在数据库名后空格添加表名就可以了

mysqldump -u 用户名 -p 数据库名 表名 -P 端口号> 导出的文件名image.jpeg

命令行进行sql文件的导入


注意: 导入的意思了,是将我现在拥有的sql文件导入到数据库中。

这里了,就需要在数据库中给这个即将到来的小家伙开辟一块空间,用来存放待会要导入的数据库的数据。


因此,整体的流程是:


1、连接数据库:mysql -u {用户名} -p 回车 再输入密码

落实到代码为:

mysql -u root -p

2、指定目标数据库名:use {库名}

代码落实为:

use newtest 

3、导入文件 source {路径}

代码落实为:

 source E:\Study\sql\test.sql

需要注意的是我们要有这个文件,如果没有则会报异常

微信图片_20221018154057.png

图形化管理工具Navicat Premium的导入和导出


倘若没有Navicat Premium这个软件,但是想考虑尝试一下的小伙伴可以到下面这个链接中进行下载喔~

Navicat Premium


Navicat 连接 数据库


1、选择需要连接的数据库类型

微信图片_20221018154219.png

2、对连接命名 + 密码确认微信图片_20221018154241.png

一、导入操作

步骤一:新建数据库

微信图片_20221018154311.png

第二步:对新建的数据库取名称(建议和sql文件名称相同)

微信图片_20221018154339.jpg

第三步:点击"运行SQL文件"

微信图片_20221018154408.png

第四步:选择要导入的文件

微信图片_20221018154432.jpg

二、导出操作

微信图片_20221018154459.png

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
SQL NoSQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(5)作者——LJS[含MySQL DQL基本查询:select;简单、排序、分组、聚合、分组、分页等详解步骤及常见报错问题所对应的解决方法]
MySQL DQL基本查询:select;简单、排序、分组、聚合、分组、分页、INSERT INTO SELECT / FROM查询结合精例等详解步骤及常见报错问题所对应的解决方法
|
2月前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
95 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
4月前
|
SQL 关系型数据库 MySQL
SQL语句编写的练习(MySQL)
这篇文章提供了MySQL数据库中关于学生表、课程表、成绩表和教师表的建表语句、数据插入示例以及一系列SQL查询练习,包括查询、排序、聚合和连接查询等操作。
|
4月前
|
存储 关系型数据库 MySQL
在 MySQL 中使用 Insert Into Select
【8月更文挑战第11天】
823 0
在 MySQL 中使用 Insert Into Select
|
5月前
|
存储 关系型数据库 文件存储
面试题MySQL问题之简单的SELECT操作在MVCC下加锁如何解决
面试题MySQL问题之简单的SELECT操作在MVCC下加锁如何解决
54 2
|
6月前
|
关系型数据库 MySQL Linux
mysql 将select结果导出文件 linux
mysql 将select结果导出文件 linux
74 3
|
5月前
|
关系型数据库 MySQL 索引
MySQL之优化SELECT语句
以上只是一些基本的优化策略,具体的优化方案还需要根据实际的业务需求和数据情况来定制。
56 0
|
6月前
|
关系型数据库 MySQL 数据库
MySQL SELECT查询实战:练习题精选,提升你的数据库查询技能
MySQL SELECT查询实战:练习题精选,提升你的数据库查询技能
|
6月前
|
SQL 关系型数据库 MySQL
深入探索MySQL SELECT查询:从基础到高级,解锁数据宝藏的密钥
深入探索MySQL SELECT查询:从基础到高级,解锁数据宝藏的密钥
|
6月前
|
存储 关系型数据库 MySQL
mysql 存储过程游标 循环输出select 查询结果
mysql 存储过程游标 循环输出select 查询结果
127 0