php网站开发现状都用什么打开模板/百度老年搜索
数据库:SQL——数据库操作的核心语言
SQL(结构化查询语言)是关系型数据库管理系统中的标准语言,广泛用于数据的定义、操作、控制和查询。SQL 包含多个子语言,分别用于不同的数据库操作任务,包括数据定义(DDL)、数据操纵(DML)、数据控制(DCL)、数据查询(DQL)和事务控制(TCL)。本文将详细介绍这些子语言的作用、常用命令,并通过示例代码展示它们的实际应用。
文章目录
- 数据库:SQL——数据库操作的核心语言
- 一、概述
- 二、SQL 子语言详解
- 1. DDL(数据定义语言,Data Definition Language)
- 2. DML(数据操纵语言,Data Manipulation Language)
- 3. DCL(数据控制语言,Data Control Language)
- 4. DQL(数据查询语言,Data Query Language)
- 5. TCL(事务控制语言,Transaction Control Language)
- 三、SQL 各子语言对比总结
一、概述
SQL(结构化查询语言,Structured Query Language)是关系型数据库管理系统(RDBMS)中用于管理和操作数据的标准语言。SQL 语言可以分为不同的子语言,每一种子语言都有其特定的用途和功能。理解这些子语言及其命令,是掌握数据库操作的基础。
二、SQL 子语言详解
1. DDL(数据定义语言,Data Definition Language)
作用:DDL 用于定义和管理数据库结构和对象,例如表、索引、视图和约束。通过 DDL,我们可以创建、修改或删除数据库对象。
常用命令:
CREATE
:用于创建新的数据库对象,例如表或视图。ALTER
:用于修改现有的数据库对象。DROP
:用于删除数据库对象。
示例:
-- 创建一个新的表 Customers
CREATE TABLE Customers (ID INT PRIMARY KEY,Name VARCHAR(100),Email VARCHAR(100)
);-- 修改表,添加一个新的列 PhoneNumber
ALTER TABLE Customers ADD PhoneNumber VARCHAR(15);-- 删除表 Customers
DROP TABLE Customers;
解释:
在上述示例中,CREATE TABLE
命令用于定义一个新的表 Customers
,包含三个列:ID
、Name
和 Email
。ALTER TABLE
命令则用于修改现有的表结构,向表中添加新的列 PhoneNumber
。最后,DROP TABLE
命令用于删除 Customers
表。
2. DML(数据操纵语言,Data Manipulation Language)
作用:DML 用于对数据库中的数据进行操作,包括查询、插入、更新和删除数据。它是我们与数据库中实际数据交互的主要方式。
常用命令:
SELECT
:用于查询数据。INSERT
:用于插入新数据。UPDATE
:用于更新现有数据。DELETE
:用于删除数据。
示例:
-- 查询所有客户信息
SELECT * FROM Customers;-- 向表中插入一条新记录
INSERT INTO Customers (Name, Email) VALUES ('Alice', 'alice@example.com');-- 更新客户信息
UPDATE Customers SET Email = 'alice123@example.com' WHERE Name = 'Alice';-- 删除一条记录
DELETE FROM Customers WHERE Name = 'Alice';
解释:
SELECT
命令用于从 Customers
表中检索所有数据。INSERT
命令将新的客户信息插入表中。UPDATE
命令修改了 Alice
的邮箱地址,而 DELETE
命令则删除了表中 Alice
的记录。
3. DCL(数据控制语言,Data Control Language)
作用:DCL 用于控制数据库用户的权限管理,主要用于授予或撤销用户对数据库的访问权限。
常用命令:
GRANT
:授予用户特定权限。REVOKE
:撤销用户的特定权限。
示例:
-- 授予用户 user1 对 Customers 表的 SELECT 权限
GRANT SELECT ON Customers TO 'user1';-- 撤销用户 user1 对 Customers 表的 SELECT 权限
REVOKE SELECT ON Customers FROM 'user1';
解释:
在这个示例中,GRANT
命令用于赋予用户 user1
对 Customers
表的查询权限,而 REVOKE
命令则撤销了这个权限。通过 DCL,数据库管理员可以有效地管理数据库安全。
4. DQL(数据查询语言,Data Query Language)
作用:DQL 主要用于从数据库中查询数据,尽管 DQL 通常被包含在 DML 中,但有时也会被单独列出。SELECT
是 DQL 中的核心命令。
常用命令:
SELECT
:用于从数据库中检索数据。
示例:
-- 查询来自美国的客户信息
SELECT Name, Email FROM Customers WHERE Country = 'USA';
解释:
SELECT
命令用于从 Customers
表中查询所有来自美国的客户的姓名和邮箱信息。这是数据库操作中最常用的命令之一。
5. TCL(事务控制语言,Transaction Control Language)
作用:TCL 用于管理数据库中的事务,确保数据的一致性和完整性。事务是指一组操作,要么全部成功,要么全部失败。
常用命令:
COMMIT
:提交事务,将事务中的所有操作永久保存。ROLLBACK
:回滚事务,撤销事务中的所有操作。SAVEPOINT
:在事务中设置保存点,以便部分回滚。
示例:
-- 开始事务
BEGIN;-- 向 Orders 表中插入数据
INSERT INTO Orders (OrderID, ProductID) VALUES (1, 1001);-- 提交事务
COMMIT;-- 或者可以回滚事务
ROLLBACK;
解释:
BEGIN
命令开始一个事务。INSERT
命令向 Orders
表中插入一条记录。如果操作成功且无错误发生,COMMIT
命令会提交事务,将操作永久保存。如果出现错误或想要撤销操作,ROLLBACK
命令则会回滚事务。
三、SQL 各子语言对比总结
子语言 | 全称 | 主要作用 | 常用命令 | 示例操作 |
---|---|---|---|---|
DDL | 数据定义语言(Data Definition Language) | 定义和管理数据库结构和对象 | CREATE 、ALTER 、DROP | 创建表、修改表结构、删除表 |
DML | 数据操纵语言(Data Manipulation Language) | 操作数据库中的数据 | SELECT 、INSERT 、UPDATE 、DELETE | 查询数据、插入数据、更新数据、删除数据 |
DCL | 数据控制语言(Data Control Language) | 管理数据库用户权限 | GRANT 、REVOKE | 授予权限、撤销权限 |
DQL | 数据查询语言(Data Query Language) | 查询数据库中的数据(通常包含在 DML 中) | SELECT | 从数据库中检索特定数据 |
TCL | 事务控制语言(Transaction Control Language) | 管理数据库事务,确保数据一致性 | COMMIT 、ROLLBACK 、SAVEPOINT | 提交事务、回滚事务、设置事务保存点 |
这个表格简洁地对比了 SQL 的不同子语言,涵盖了它们的全称、主要作用、常用命令以及典型的示例操作。这有助于快速理解每种子语言的用途和功能。
相关文章:

数据库:SQL——数据库操作的核心语言
数据库:SQL——数据库操作的核心语言 SQL(结构化查询语言)是关系型数据库管理系统中的标准语言,广泛用于数据的定义、操作、控制和查询。SQL 包含多个子语言,分别用于不同的数据库操作任务,包括数据定义&a…...

Unity + HybridCLR 从零开始
官方文档开始学习,快速上手 | HybridCLR (code-philosophy.com)是官方文档链接 1.建议使用2019.4.40、2020.3.26、 2021.3.0、2022.3.0 中任一版本至于其他2019-2022LTS版本可能出现打包失败情况 2. Windows Win下需要安装visual studio 2019或更高版本。安装时至少要包含 使…...

C++小总结
C小总结 接口 对外暴露头文件中,只需要声明接口函数即可,其他不暴露的函数不需要进行声明。接口的参数使用指针形式比较好,因为外部使用时可以对实参进行创建和析构,如果非接口函数使用new开辟,不太好进行析构。在使…...

从快到慢学习Git指令
Git是现在最流行的版本控制工具之一。无论是在开源社区还是企业软件开发中,Git都扮演着至关重要的角色。本文将根据不同的需求,分别提供快速上手和深入学习Git的指南。 如果你只想下载代码 如果你只是想下载GitHub或其他代码仓库的代码,那你只需要了解以下两个命令: git clo…...

传奇游戏发布渠道
传奇游戏发布渠道 回答:游戏发布平台|手机游戏发布平台 传奇游戏发布渠道作为游戏开发商直接控制的信息传播途径,其安全性自然有着较高的保障。首先,渠道通常会采用先进的加密技术和安全协议来保护数据传输过程中的安全,防止信息…...

如何有效阅读科研论文【方法论】
如何读论文【论文精读1】_哔哩哔哩_bilibili 如何有效阅读科研论文 科研论文是了解学术领域最新研究成果和技术发展的重要途径。有效地阅读论文不仅能够帮助我们掌握前沿知识,还能提升自己的研究能力。本文将介绍一种系统的论文阅读方法,并通过具体的步…...

【揭秘】层层加码,竟能加速渠道营销数字化?-eBest
国潮饮料品牌在eBest RTM系统的支持下,已经将数字化贯彻到每一个销售环节,且看eBest如何通过“层层加码”,进一步加速该饮料品牌渠道数字化进程,实现弯道超车? “一箱四码”垛码 五码实现渠道数字化 为提高营销和数字…...

基于WAMP环境的简单用户登录系统实现(v3版)(持续迭代)
目录 版本说明 实现环境: 流程逻辑框图: 数据库连接 登录页面:login.html 登录处理实现:doLogin.php 用户欢迎页面:welcome.php 密码修改页面:change_password.html 修改处理:doChangePa…...

大语言模型与多模态大模型loss计算
文章目录 前言一、大语言模型loss计算1、loss计算代码解读2、构建模型输入内容与label标签3、input_ids与labels格式 二、多模态大模型loss计算方法1、多模态loss计算代码解读2、多模态输入内容2、大语言模型输入内容3、图像embending如何嵌入文本embeding 前言 如果看了我前面…...

线上研讨会 | CATIA助力AI提升汽车造型设计
报名链接: 2024探索之旅第二季...

Unity新输入系统 之 InputAction(输入配置文件最基本的单位)
本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正 首先你应该了解新输入系统的构成结构:Unity新输入系统结构概览-CSDN博客 Input System - Unity 手册 1.In…...

【3】MySQL的安装即启动
目录 一.下载 二.安装 三.启动 一.下载 二.安装 安装MySQL时遇到的Initializing database错误:推荐下面的博客(简单就是电脑名不要出现中文) https://blog.csdn.net/m0_52775858/article/details/123705566 三.启动 PS:cmd要…...

变“金点子”为“好应用”,合合信息智能文档处理技术助力大学生探索AI创新边界
谈“糖”色变、追求养生、低卡生活……这些热门词汇频频在社交媒体上掀起讨论热潮。有这样一批年轻人不但捕捉到了这些词汇背后真实的用户需求,并且正在利用AI技术寻找解决之道。 近日,“中国大学生服务外包创新创业大赛”(以下简称“服创大…...

央行重提P2P存量业务化解,非吸案开始翻旧账?
沉寂已久的P2P,又突然以另一种意想不到的形式回到公众视野了。2018年全国P2P坍塌式暴雷,平台老板“跑路”“判刑”的消息一时间你方唱罢我登场。当年的某凰金融、某租宝、某信贷等赫赫有名的网贷平台传出的消息无非两类——查封或跑路,这几年…...

8B 端侧小模型 | 能力全面对标GPT-4V!单图、多图、视频理解端侧三冠王,这个国产AI开源项目火爆全网
这两天, Github上一个 国产开源AI 项目杀疯了!一开源就登上了 Github Trending 榜前列,一天就获得将近600 star。 这个项目就是国内大模型四小龙之一面壁智能最新大打造的面壁「小钢炮」 MiniCPM-V 2.6 。它再次刷新端侧多模态天花板…...

汽车免拆诊断案例 | DAF(达富)汽油尾气处理液故障警示
故障现象 距离我上次在货卡上工作已经有一段时间了,让它们在道路上保持安全行驶是非常重要的。因此,当故障警示灯亮起时,我们需要迅速找到问题方向以及排除故障。 车辆的仪表板亮起多个故障灯以及警示灯,我们需要用解码器查找触…...

图论算法
目录 1.引言 2.图论基础 3.Dijkstra算法 3.1 算法背景与概述 3.2 算法原理 3.3 算法步骤 3.4 示例说明 3.5 复杂度分析 3.6 优缺点及应用场景 4.Floyd-Warshall算法 4.1 算法背景与概述 4.2 算法原理 4.3 算法步骤 4.4 示例说明 4.5 复杂度分析 4.6 优缺点及应用…...

手抖跟饮食有关系吗?
手抖,医学上称为震颤(tremor),是指手部或其他身体部位的不自主抖动。饮食在某种程度上与手抖相关,但并非唯一的因素。以下是饮食与手抖之间可能存在的关系: 1. 咖啡因摄入:咖啡因是一种刺激神经…...

59. 螺旋矩阵 II
59. 螺旋矩阵 II 题目链接:59. 螺旋矩阵 II 代码如下: class Solution { public:vector<vector<int>> generateMatrix(int n) {if(n1){return {{1}};}vector<vector<int>> res(n,vector<int>(n));int num1;int left0,r…...

shiro注解不起作用:shiro进行权限校验时,@RequireRoles(“admin“)注解不起作用的解决方法
今天在写前后端分离项目时,用jwt加shiro进行登录权限校验时,RequireRoles("admin")注解不起作用,记录一下。 前提:数据库里面的user_type代表用户类型 :0普通用户 ;1:专家࿱…...

ZABBIX邮件监控发送信息
前言:本地邮箱,第三方邮箱,第三方邮箱加脚本 1、本地邮箱测试 #cd /home # ls laiyingx [rootzabbix ~]# vim /etc/postfix/main.cf /mydestination $myhostname, localhost.$mydomain, localhost,$mydomain [rootzabbix ~]# systemctl…...

Java核心 - 减少循环次数的必要性及其实现方法
作者:逍遥Sean 简介:一个主修Java的Web网站\游戏服务器后端开发者 主页:https://blog.csdn.net/Ureliable 觉得博主文章不错的话,可以三连支持一下~ 如有疑问和建议,请私信或评论留言! 前言 在 Java 编程中…...

国产麒麟系统下U盘只读文件系统问题
问题描述 国产麒麟系统下U盘只读文件系统问题 解决方案: 提示:卸载U盘,然后重新挂载,修复。 1.插入U盘并用df -h查看U盘信息: 命令:df -h 找到自己的U盘信息(可以根据容量大小来找)ÿ…...

STM32-定时器-定时器中断-PWM调光
1、TIM 定时器 定时器是一种电子设备或软件组件,用于在预定时间后触发一个事件或操作。它可以基于时钟信号或其他周期性信号来工作,并且可以用来测量时间间隔、生成延时、触发中断等。 时钟信号 时钟信号是一种周期性的电信号,用于同步电路中…...

【学习笔记】用线段树维护区间计数问题
前言 简单的区间计数问题可能直接推式子就行了。 但有些问题必须要数据结构维护。线段树就是一个比较好的处理区间的数据结构。 Gym102222L 思路 满足条件的区间特征: max { a i } − min { a i } 1 − c n t 0 \max\{a_i\}-\min\{a_i\}1-cnt0 max{ai}…...

4章11节:用R做数据重塑,数据的特征缩放和特征可视化
由于数据往往复杂多样,其中不同的特征变量可能具有不同的数值范围,这使得特征缩放成为一个必要的步骤。例如,当我们要处理医学数据时,对于同一个患者,肺活量的变化范围可能在1000到5000之间,而体重指数(BMI)的变化范围则可能在10到50之间,其他一些生理指标甚至可能处于…...

LVS-NAT + LVS-DR
LVS 现在lvs已经是linux内核标准的一部分,使用lvs可以达到的技术目标是:通过linux达到负载均衡技术和linux操作系统实现一个高性能高可用的linux服务器集群,他具有良好的可靠性,可延展性和可操作性,从而以低廉的成本实…...

排序算法——插入排序
一、插入排序概念 直接插入排序(Insertion Sort)是一种简单的排序算法,它的工作原理类似于人们手动排序卡片的方式。该算法通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插…...

重修设计模式-行为型-状态模式
重修设计模式-行为型-状态模式 先了解一下状态机的概念,状态机是软件编程中对一种状态场景的抽象表达,构成状态机三要素是:状态(State)、事件(Event)、动作(Action)&…...

网络安全知识渗透测试
渗透测试是一种模拟网络攻击,用于识别漏洞并制定规避防御措施的策略。及早发现缺陷使安全团队能够修复任何漏洞,从而防止数据泄露,否则可能会造成数十亿美元的损失。笔测试还有助于评估组织的合规性、提高员工对安全协议的认识、评估事件响应…...