SQL概述

1. SQL的分类

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

  • DDL(Data Definition Languages、数据定义语言),这些语句定义了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构。主要的语句关键字包括 CREATE 、 DROP 、 ALTER 等。
  • DML(Data Manipulation Language、数据操作语言),用于添加、删除、更新和查询数据库记录,并检查数据完整性。主要的语句关键字包括 INSERT 、 DELETE 、 UPDATE 、 SELECT 等。SELECT是SQL语言的基础,最为重要。
  • DCL(Data Control Language、数据控制语言),用于定义数据库、表、字段、用户的访问权限和安全级别。主要的语句关键字包括 GRANT 、 REVOKE 、 COMMIT 、 ROLLBACK 、 SAVEPOINT 等。

因为查询语句使用的非常的频繁,所以很多人把查询语句单拎出来一类:DQL(数据查询语言)。
还有单独将 COMMIT 、 ROLLBACK 取出来称为TCL (Transaction Control Language,事务控制语言)。

2. SQL语言的规则与规范

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

(2). 每条命令以 ; 或 \g 或 \G 结束。

(3). 关键字不能被缩写也不能分行。

(4). 关于标点符号 : 

  • 必须保证所有的()、单引号、双引号是成对结束的.
  • 必须使用英文状态下的半角输入方式.
  • 字符串型和日期时间类型的数据可以使用单引号(' ')表示列的别名,尽量使用双引号(" "),而且不建议省略as.

3.SQL大小写规范

(1). MySQL 在 Windows 环境下是大小写不敏感的.

(2). MySQL 在 Linux 环境下是大小写敏感的。

  • 数据库名、表名、表的别名、变量名是严格区分大小写的关键字、函数名、列名(或字段名)、列的别名(字段的别名) 是忽略大小写的。

(3). 推荐采用统一的书写规范:

  • 数据库名、表名、表别名、字段名、字段别名等都小写.
  • SQL 关键字、函数名、绑定变量等都大写.

4.注释

可以使用如下格式的注释结构

单行注释:#注释文字(MySQL特有的方式)
单行注释:-- 注释文字(--后面必须包含一个空格。)

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

5.命名规则

  • 数据库、表名不得超过30个字符,变量名限制为29个必须只能包含 A–Z, a–z, 0–9, _共63个字符
  • 数据库名、表名、字段名等对象名中间不要包含空格
  • 同一个MySQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名
  • 必须保证你的字段没有和保留字、数据库系统或常用方法冲突。如果坚持使用,请在SQL语句中使用`(着重号)引起来
  • 保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性。假如数据类型在一个表里是整数,那在另一个表里可就别变成字符型了
#以下两句是一样的,不区分大小写
show databases;
SHOW DATABASES;
#创建表格
#create table student info(...); #表名错误,因为表名有空格
create table student_info(...);
#其中order使用``飘号,因为order和系统关键字或系统函数名等预定义标识符重名了CREATE TABLE `order`(

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

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

相关文章

2.1K Star微软开源的高质量 iot库

功能描述 该项目是一个开源的 .NET Core 实现,旨在帮助开发者构建适用于物联网(IoT)设备和场景的应用程序。它提供了与传感器、显示器和输入设备等相互作用所需的 GPIO 引脚、串口等硬件的接口。该仓库包含 System.Device.Gpio 库以及针对各种板卡(如 Ra…

redis底层数据结构之ziplist

目录 一、概述二、ziplist结构三、Entry结构四、为什么ZipList特别省内存五、ziplist的缺点 上一篇 redis底层数据结构之SDS 下一篇 明天更新 一、概述 一种连续内存空间存储的顺序数据结构,每个元素可以是字符串或整数。优点:节省内存空间。适用于存储小规模的列表…

STM32 | USART实战案例

STM32 | 通用同步/异步串行接收/发送器USART带蓝牙(第六天)随着扩展的内容越来越多,很多小伙伴已经忘记了之前的学习内容,然后后面这些都很难理解。STM32合集已在专栏创建,方面大家学习。1、通过电脑串口助手发送数据,控制开发板LED灯 从题目中可以挖掘出,本次使用led、延…

【Linux文件系统开发】认知篇

【Linux文件系统开发】认知篇 文章目录 【Linux文件系统开发】认知篇一、文件系统的概念二、文件系统的种类(文件管理系统的方法)三、分区四、文件系统目录结构五、虚拟文件系统(Virtual File System)1.概念2.原因3.作用4.总结 一…

[ LeetCode ] 题刷刷(Python)-第35题:搜索插入位置

题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 nums 为 无重复元素 的 升序 排列数组 请必须使用时间复杂度为 O(log n) 的算法。 示例 示例 1: 输入: …

减肥变成一种趋势!足球直播是一种刺激——早读(逆天打工人爬取热门微信文章解读)

看直播是打发时间的好方式 引言Python 代码第一篇 洞见 跌入粪坑的钟美美,才是真正的“人间清醒”第二篇 人民日报 来了!新闻早班车要闻社会政策 结尾 变化是生活的法则 而直播的比赛则是这一法则的缩影 每一秒都可能带来转折和惊喜 充满了未知和奇迹 引…

磁盘损坏无法读取:原因、恢复方案与防范之道

在数字化信息爆炸的时代,磁盘作为数据存储的重要载体,承载着无数重要的文件和资料。然而,当磁盘突然损坏,无法读取数据时,我们往往会陷入困境,焦虑不已。面对这种情况,我们该如何应对&#xff1…

插入排序(insertionSort)

插入排序是一种简单直观的排序算法, 基本思想 将待排序的元素逐个插入到已经排序好的部分中的适当位置,从而得到新的有序序列。核心思想是不断地比较和移动元素,直到找到合适的插入位置。 插入排序的特点: 稳定性:插…

Yolo-world使用

1、安装 python pip install ultralytics 前往官网下载模型:https://docs.ultralytics.com/models/yolo-world/#key-features 我这里使用yolov8s-world.pt举例 最简单的使用示例 if __name__ __main__:model YOLO(model/yolov8s-world.pt)results model.pre…

中仕公考:考公还是考编?区别是什么?

公务员和事业编应该如何选择?区别在哪里?中仕为大家总结以下几点,看完就明白了! 事业编制:主要指从事事业单位工作人员所获得的稳定的事业单位编制。 公务员:是指在各级政府机关中,行使国家行政职权,执行国家公务的…

Ubuntu的apt命令用法汇总

在Ubuntu系统中,apt 是一个十分常用的包管理工具,用于安装、更新、卸载和管理软件包。 本文将汇总apt 命令的用法,以便你更好地利用Ubuntu系统进行软件管理。 一. 安装软件包要安装一个软件包,使用以下命令: sudo a…

pyhton学习之-分支结构-运费计算模板-第二练

第1关:运费计算模板第二练-地区运费计算模板 任务描述 现在有一个淘宝店铺,发货地在天津,店主设计了一个运费规则如下图所示: 可以选择区域来指定每件商品的运费,达到一定的购买金额以后可以包邮 测试说明 计算运费 根据地区和购买数量计算运费。 输入:北京,1件 输出:…

2024HW ---->内网横向移动

在蓝队的面试过程中,如果你会内网渗透的话,那是肯定的一个加分选项!!! 那么从今天开始,我们就来讲一下内网的横向移动!!! 目录 1.域内任意用户枚举 2.Password-Sprayi…

ffmpeg入门

ffmpeg入——安装 Fmpeg地址 FFmpeg源码地址:GitHub - FFmpeg/FFmpeg: Mirror of https://git.ffmpeg.org/ffmpeg.git FFmpeg可执行文件地址:Download FFmpeg Windows平台 ​ ​ Windows平台下载解压后如图所示(文件名称以-share结尾的…

深入剖析Spring框架:循环依赖的解决机制

你好,我是柳岸花开。 什么是循环依赖? 很简单,就是A对象依赖了B对象,B对象依赖了A对象。 在Spring中,一个对象并不是简单new出来了,而是会经过一系列的Bean的生命周期,就是因为Bean的生命周期所…

如何添加所有未跟踪文件到暂存区?

文章目录 如何将所有未跟踪文件添加到Git暂存区?步骤与示例代码1. 打开命令行或终端2. 列出所有未跟踪的文件3. 添加所有未跟踪文件到暂存区4. 验证暂存区状态 如何将所有未跟踪文件添加到Git暂存区? 在版本控制系统Git中,当我们首次创建新文…

Java每日面试题

Java 高级面试问题及答案 问题1: Java中的垃圾回收机制是如何工作的?请描述一下垃圾收集器的工作原理。 答案: Java的垃圾回收机制主要依赖于垃圾收集器(Garbage Collector,GC),它负责自动回收不再使用的对象&#x…

最全!2024腾讯春招Spring Circuit Breaker面试题大全,附详解和技巧,必备收藏!

面对2024年腾讯春季招聘,准备充分的技术面试答案至关重要,尤其是在微服务架构和高可用性设计方面。Spring Circuit Breaker作为维持微服务稳定性和可靠性的关键技术,了解其工作原理和实际应用对于任何希望在当今技术驱动的环境中取得成功的软…

安全狗云眼的主要功能有哪些?

"安全狗云眼"是一款综合性的网络安全产品,主要用于实时监控和保护企业的网络安全。其核心功能包括威胁检测、漏洞扫描、日志管理和合规性检查等。 以下是安全狗云眼的主要功能详细介绍: 1、资产管理 定期获取并记录主机上的Web站点、Web容器、…

【科大讯飞笔试题汇总】2024-04-21-科大讯飞春招笔试题-三语言题解(CPP/Python/Java)

🍭 大家好这里是KK爱Coding ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新科大讯飞近期的春秋招笔试题汇总~ 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢&…