SQL语言的规则与规范

2023-10-27

SQL分类

SQ语言在功能上主要分为如下三大类:

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

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

SQL语言的规则与规范

基本规则

1、SQL 可以写在一行或者多行。为了提高可读性,各子句分行写,必要时使用缩进
2、每条命令以 ; 或 \g 或 \G 结束
3、关键字不能被缩写也不能分行
4、关于标点符号
5、必须保证所有的()、单引号、双引号是成对结束的
6、必须使用英文状态下的半角输入方式
7、字符串型和日期时间类型的数据可以使用单引号(' ')表示
8、列的别名,尽量使用双引号(" "),而且不建议省略as

SQL大小写规范

1、MySQL 在 Windows 环境下是大小写不敏感的
2、MySQL 在 Linux 环境下是大小写敏感的
(1)、数据库名、表名、表的别名、变量名是严格区分大小写的
关键字、函数名、列名(或字段名)、列的别名(字段的别名) 是忽略大小写的。
3、推荐采用统一的书写规范:
(1)、数据库名、表名、表别名、字段名、字段别名等都小写
(2)、SQL 关键字、函数名、绑定变量等都大写

阿里巴巴Java开发手册:
在这里插入图片描述

注释

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

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

命名规则

数据库、表名不得超过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`(
);
select id as "编号", `name` as "姓名" from t_stu; #起别名时,as都可以省略
select id as 编号, `name` as 姓名 from t_stu; #如果字段别名中没有空格,那么可以省略""
select id as 编 号, `name` as 姓 名 from t_stu; #错误,如果字段别名中有空格,那么不能省略""
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL语言的规则与规范 的相关文章

随机推荐

  • thinkbook14+(thinkbook16+) 屏幕亮度忽明忽暗

    thinkbook14 thinkbook16 在断开电源线的情况下 屏幕会时不时忽明忽暗 非常恶心 查了半天 才在贴吧找到如何解决这个问题 开始菜单里搜索英特尔显卡控制中心 在系统选项里有个功率 功率里有个显示器节能 关掉就好了
  • Hyperledger Fabric 入门笔记(三)Fabric V2.4 环境搭建

    文章目录 前言 一 基本概念 1 1 虚拟机 1 2 虚拟机软件 二 虚拟机相关 2 1 VirualBox7安装Ubuntu 2 2 Vmware安装Ubuntu 2 3 Ubuntu的使用 2 3 1 软件包管理器 2 3 1 1 yu
  • vue汉字转拼音-pinyin.js

    需求 用户在输入姓和名字的时候 由于姓 拼音 和名 拼音 为字母 容易输错 于是就有了自动生成拼音这个需求 npm install安装的四种用法 save和 save dev npm install xxx 安装项目到项目目录下 不会将模块
  • 软件工程基础知识-软件质量

    软件质量是指反映软件系统或软件产品满足规定或隐含要求的能力的特征和特性全体 软件质量保证是为保证软件系统或软件产品充分满足用户要求的质量而进行的有计划 有组织的活动 其目的是生产该质量的软件 一 软件质量特性 二 软件质量保证 三 软件评审
  • spring集成Junit4配置

    这两天做Web开发 发现通过Spring进行对象管理之后 做测试变得复杂了 因为所有的Bean都需要在applicationContext xml中加载好 之后再通过 Resource去取得 如果每次都要整个业务流做的差不多了再去测试 这样
  • OpenCV-Python图形图像处理专栏文章目录

    前往老猿Python博客 https blog csdn net LaoYuanPython 注 1 部分文章前面标星号表示文章为付费专栏文章 2 本专栏的伴生付费专栏 https blog csdn net LaoYuanPython a
  • hadoop实践(三)hadoop 集群配置

    第一步 集群规划 master 192 168 136 140 slave1 192 168 136 151 slave2 192 168 136 152 第二步 配置环境变量 1 vi etc profile 在最后面添加如下代码 exp
  • 【定量分析、量化金融与统计学】R语言方差分析ANOVA(F检验)

    目录 一 前言 Fixed effects models Random effects models Mixed effects models 二 ANOVA使用的前提假设与假设检验 三 ANOVA的计算原理 四 事后检验与交叉图 五 R语
  • vue添加公用方法及使用

    为vue添加公用方法 vue添加通用方法 common js var common function return f1 function console log this is common f1 f2 function console
  • Windows共享文件夹,让你的文件可以通过网络访问

    Windows共享文件夹 让你的文件可以通过网络访问 以windows11为例 现在有两台windows电脑A和B B想通过网络访问A的某个文件 首先保证B是可以ping的通A的 比如共享A的D盘文件夹给B访问 下面是详细步骤 A电脑的操作
  • 等价类划分法

    一 什么是等价类划分法 1 等价类划分法是一种重要的 常用的黑盒测试方法 它将不能穷举的测试过程进行合理分类 从而保证设计出来的测试用例具有完整性和代表性 2 等价类划分法是把所有可能的输入数据 即程序的输入划分成若干部分 子集 然后从每一
  • YOLOv1的原理及实现过程

    YOLO v1的原理及实现过程 目标检测是一件比较实际的且具有挑战性的计算机视觉任务 其可以看成图像分类与定位的结合 给定一张图片 目标检测系统要能够识别出图片的目标并给出其位置 由于图片中目标数是不定的 且要给出目标的精确位置 目标检测相
  • C# EntityFrameworkCore 分页

    使用 public static PagedList
  • 深入浅出分析Electron自动升级electron-updater + electron-builder配置

    自动升级的方式有很多种 我们公司第一版是使用fs做文件的下载和替换 但是存在C programfile的权限问题 因此只好更换技术方案 使用Electron builder结合updater实现自动升级功能 一 electron build
  • mysql 取绝对值_自学MySQL第六天

    今天先学习了一些内置的numeric function 第一个ROUND 顾名思义近似 四舍五入的方式呈现数值 可以选保留几位小数 如图所示 第二个TRUNCATE 不用四舍五入 强行取指定位数小数 如图 第三个CEILING 返回大于括号
  • PCL学习笔记,区域生长分割(region growing segmentation)

    在本博文中 我主要介绍如何在pcl RegionGrowing类中调用区域增长算法 首先注意一点 这里是region growing segmentation 不是color based region growing segmentatio
  • 查询linux系统中空闲内存/内存使用状态查看/剩余内存查看

    查询linux系统中空闲内存 内存使用状态查看 剩余内存查看 本文作者 宗国锋 宗国锋官方网站 转载请注明原文链接 http www zongguofeng cn 2010 0223 272 html 下面介绍使用top和free命令查看系
  • 浅析Python heapq模块 堆数据结构

    堆的定义 堆是一种特殊的树形数据结构 每个节点都有一个值 通常我们所说的堆的数据结构指的是二叉树 堆的特点是根节点的值最大 或者最小 而且根节点的两个孩子也能与孩子节点组成子树 亦然称之为堆 堆分为两种 大根堆和小根堆是一颗每一个节点的键值
  • 2021-01-25

    项目在windows系统上运用jdk tomcat部署后 js页面不显示 有哪些原因 怎么解决
  • SQL语言的规则与规范

    SQL分类 SQ语言在功能上主要分为如下三大类 DDL Data Definition Laguage 数据定义语言 这些语言定义了不同的数据库 表 视图 索引等数据库对象 还用来创建 删除 修改数据库和数据表的结构 主要的语句关键字包括C