当前位置: 首页 > news >正文

数据库语法复习

总结:

DDL(数据定义语言)

  • CREATE DATABASE:创建一个新的数据库。
  • DROP DATABASE:删除一个数据库。
  • CREATE TABLE:创建一个新的表。
  • DROP TABLE:删除一个表。
  • ALTER TABLE:修改表的结构,如添加、删除或修改列。

DML(数据操作语言)

  • INSERT INTO:向表中插入新记录。
  • SELECT:从表中检索数据。
  • UPDATE:修改表中的现有记录。
  • DELETE:从表中删除记录。

DQL(数据查询语言)

  • 实际上是DML的一部分,但常用来特别指代SELECT命令及其相关操作(如聚合函数、排序、分组等)。

TCL(事务控制语言)

  • BEGIN TRANSACTION(或START TRANSACTION):开始一个新的事务。
  • COMMIT:提交当前事务,使其更改永久化。
  • ROLLBACK:撤销当前事务的更改。

DCL(数据控制语言)

  • GRANT:授予用户或角色对数据库对象的权限。
  • REVOKE:撤销用户或角色对数据库对象的权限。

1.创建数据库

CREATE DATABASE database_name;

2.删除数据库

DROP DATABASE database_name;

 3.选择数据库

USE database_name;

4.创建表

CREATE TABLE table_name (

column1 datatype,

column2 datatype,

column3 datatype,

.... );

5.删除表

 DROP TABLE table_name;

6.插入数据

INSERT INTO table_name (column1, column2, column3, ...)

VALUES (value1, value2, value3, ...);

 7.查询数据

SELECT column1, column2, ...

FROM table_name

WHERE condition;

8.更新数据

UPDATE table_name

SET column1 = value1, column2 = value2, ...

WHERE condition;

9.删除数据

DELETE FROM table_name WHERE condition;

10条件语句

    • 等于: =
    • 不等于: <> 或 !=
    • 大于: >
    • 小于: <
    • 大于等于: >=
    • 小于等于: <=
    • AND, OR, NOT 用于组合条件

11.排序 

SELECT column1, column2, ...

FROM table_name

ORDER BY column1

ASC|DESC;

12.聚合函数

    • COUNT(): 计算行数
    • SUM(): 计算总和
    • AVG(): 计算平均值
    • MAX(): 返回最大值
    • MIN(): 返回最小值

13.分组

SELECT column_name(s), aggregate_function(column_name)

FROM table_name

WHERE condition

GROUP BY column_name(s);

​​​​​​​14.连接表

    • INNER JOIN: 返回两个表中都有的记录
    • LEFT JOIN: 返回左表中的所有记录,以及右表中匹配的记录
    • RIGHT JOIN: 返回右表中的所有记录,以及左表中匹配的记录
    • FULL JOIN: 返回左表和右表中的所有记录,如果某一边没有匹配,则结果中对应字段为空
  1. 15.创建索引

CREATE INDEX index_name ON table_name (column1, column2, ...);

16.删除索引

DROP INDEX index_name ON table_name;

17.修改表结构

  • 添加列: ALTER TABLE table_name ADD column_name datatype;
  • 删除列: ALTER TABLE table_name DROP COLUMN column_name;
  • 修改列: ALTER TABLE table_name MODIFY COLUMN column_name new_datatype; (注意:不是所有数据库系统都支持MODIFY COLUMN)
  • 重命名列: 这通常需要一个两步过程,首先添加一个新列,然后将旧列的数据复制到新列,最后删除旧列。但某些数据库系统(如MySQL)提供了重命名列的直接方法。

18.事务管理

  • 开始事务: BEGIN; 或 START TRANSACTION;
  • 提交事务: COMMIT;
  • 回滚事务: ROLLBACK;

数据库语法通常指的是用于管理和操作数据库的各种命令和语句。
这些语法因不同的数据库管理系统(DBMS)而异,但大多数关系
型数据库管理系统(RDBMS)都支持SQL(结构化查询语言)作
为其核心语言。以下是一些常见的数据库语法示例,这些示例在
大多数RDBMS中都是通用的或相似的:1. DDL (数据定义语言)
创建数据库sql
CREATE DATABASE database_name;
删除数据库sql
DROP DATABASE database_name;
创建表sql
CREATE TABLE table_name (  column1 datatype,  column2 datatype,  ...  
);
删除表sql
DROP TABLE table_name;
修改表结构sql
-- 添加列  
ALTER TABLE table_name ADD column_name datatype;  -- 删除列  
ALTER TABLE table_name DROP COLUMN column_name;  -- 修改列的数据类型  
ALTER TABLE table_name ALTER COLUMN column_name new_datatype;
2. DML (数据操作语言)
插入数据sql
INSERT INTO table_name (column1, column2, ...)  
VALUES (value1, value2, ...);
查询数据sql
SELECT column1, column2, ...  
FROM table_name  
WHERE condition;
更新数据sql
UPDATE table_name  
SET column1 = value1, column2 = value2, ...  
WHERE condition;
删除数据sql
DELETE FROM table_name WHERE condition;
3. DQL (数据查询语言)
聚合函数sql
SELECT COUNT(column_name), AVG(column_name), ...  
FROM table_name  
WHERE condition;
排序sql
SELECT column1, column2, ...  
FROM table_name  
ORDER BY column1 ASC|DESC;
分组sql
SELECT column_name(s), aggregate_function(column_name)  
FROM table_name  
WHERE condition  
GROUP BY column_name(s);
4. TCL (事务控制语言)
开始事务sql
BEGIN TRANSACTION;
提交事务sql
COMMIT;
回滚事务sql
ROLLBACK;
5. DCL (数据控制语言)
创建用户 (在SQL Server中)sql
CREATE LOGIN login_name WITH PASSWORD = 'password';  
CREATE USER username FOR LOGIN login_name;
授予权限sql
GRANT permission ON object TO user_or_role;
撤销权限sql
REVOKE permission ON object FROM user_or_role;
请注意,上述语法示例在不同的DBMS中可能有所差异。
例如,某些数据库系统可能使用不同的关键字或语法来
执行相同的操作。因此,在使用特定的DBMS时,建议查阅该
DBMS的官方文档以获取准确的语法和用法信息。

相关文章:

数据库语法复习

总结&#xff1a; DDL&#xff08;数据定义语言&#xff09; CREATE DATABASE&#xff1a;创建一个新的数据库。DROP DATABASE&#xff1a;删除一个数据库。CREATE TABLE&#xff1a;创建一个新的表。DROP TABLE&#xff1a;删除一个表。ALTER TABLE&#xff1a;修改表的结构&a…...

Tomcat、MySQL、Redis最大支持说明

文章目录 一、Tomcat二、MySQL三、Redis1、最大连接数2、TPS、QPS3、key和value最大支持 一、Tomcat 查看SpringBoot内置Tomcat的源码&#xff0c;如下&#xff1a; 主要就是看抽象类AbstractEndpoint&#xff0c;可以看到默认的核心线程数10&#xff0c;最大线程数200 通过…...

MATLAB数值计算工具箱介绍

MATLAB是一个强大的数学计算平台&#xff0c;它提供了广泛的数值计算工具箱&#xff0c;这些工具箱覆盖了从基础的线性代数到复杂的数值分析和优化问题。以下是MATLAB中一些关键工具箱的详细介绍&#xff1a; 1. 线性代数工具箱&#xff08;Linear Algebra Toolbox&#xff09…...

2023 广东省大学生程序设计竞赛(部分题解)

目录 A - Programming Contest B - Base Station Construction C - Trading D - New Houses E - New but Nostalgic Problem I - Path Planning K - Peg Solitaire A - Programming Contest 签到题&#xff1a;直接模拟 直接按照题目意思模拟即可&#xff0c;为了好去…...

ROS2学习——Docker环境下安装于使用(1)

目录 一、简要 二、ROS2和ROS1区别 三、环境搭建与安装 &#xff08;2&#xff09;拉取ubuntu22.04镜像 &#xff08;2&#xff09;安装ROS2 1. 基本设置 2.设置源 3.安装ROS2功能包 4.测试 四、相关指令学习 1.小海龟测试 2.ros2 node等指令 3.rqt 一、简要 随着R…...

数据仓库之Hologres

官方文档 简介 Hologres是阿里云推出的一种云原生的实时分析型数据仓库。它是基于开源项目Apache Hudi&#xff08;Hadoop Upserts Deletes and Incrementals&#xff09;进行扩展和优化的。Hologres提供了高性Hologres是阿里云推出的一种云原生的实时分析型数据仓库。它是基…...

MacOS搭建docker本地私有镜像库

相关环境 macOS: bigsur 11.7.8 docker desktop: 4.22.0 docker engine: 24.0.5 准备工作 本机已经安装好docker desktop&#xff0c;未安装的自行参考其他教程。如果不能翻墙&#xff0c;可以修改本地的镜像地址&#xff0c;可在docker desktop 设置中的docker engine中修…...

Unity Material(材质)、Texture(纹理)、Shader(着色器)简介

文章目录 一、概念二、Rendering Mode三、Main Maps三、参考文章 一、概念 Material(材质)&#xff1a;物体的“色彩”、“纹理”、“光滑度”、“透明度”、“反射率”、“折射率”、“发光度”等&#xff0c;材质的本质是shader的实例(载体)Texture(贴图)&#xff1a;附件到…...

《视觉十四讲》例程运行记录(1)—— 课本源码下载和3rdparty文件夹是空的解决办法

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、第二版十四讲课本源码下载1. 安装git工具 二、Pangolin下载和安装1. 源码下载2. Pangolin的安装(1) 安装依赖项(2) 源码编译安装(2) 测试是否安装成功 二、…...

VLM与基础分割模型的联合使用

最近做的项目里有涉及大模型&#xff0c;里面有一部分的功能是&#xff1a; 将图片输入VLM(视觉语言模型&#xff0c;我使用的是llava)&#xff0c;询问图中最显著的物体&#xff0c;将其给出的答案作为基础分割模型&#xff08;我使用的是Grounded-SAM&#xff09;的text prom…...

JS数组去重的方法

目录 1、includes 2、indexOf 3、Set结合Array.from 4、filter 5、reduce 6、使用双重for循环 介绍一下数组常用的去重复方法 以以下数组为例子来介绍&#xff0c;一维的数字类型数组&#xff1a; const arr [1, 2, 2, 2, 3, 1, 6, 4, 4, 6, 5, 7] 1、includes funct…...

Go实战训练之Web Server 与路由树

Server & 路由树 Server Web 核心 对于一个 Web 框架&#xff0c;至少要提供三个抽象&#xff1a; Server&#xff1a;代表服务器的抽象Context&#xff1a;表示上下文的抽象路由树 Server 从特性上来说&#xff0c;至少要提供三部分功能&#xff1a; 生命周期控制&…...

C#中接口设计相关原则

在C#中&#xff0c;接口&#xff08;Interface&#xff09;是一种引用类型&#xff0c;它定义了一个契约&#xff0c;指定了一个类必须实现的成员&#xff08;属性、方法、事件、索引器&#xff09;。接口不提供这些成员的实现&#xff0c;只指定成员必须按照特定的方式被实现。…...

Pytorch学习笔记——卷积操作

一、认识卷积操作 卷积操作是一种数学运算&#xff0c;它涉及两个函数&#xff1a;输入函数&#xff08;通常是图像&#xff09;和卷积核&#xff08;也称为滤波器或特征检测器&#xff09;。卷积核在输入函数上滑动&#xff0c;将核中的每个元素与其覆盖的输入函数区域中的对应…...

探索鸿蒙开发:鸿蒙系统如何引领嵌入式技术革新

嵌入式技术已经成为现代社会不可或缺的一部分。而在这个领域&#xff0c;华为凭借其自主研发的鸿蒙操作系统&#xff0c;正悄然引领着一场技术革新的浪潮。本文将探讨鸿蒙开发的特点、优势以及其对嵌入式技术发展的深远影响。 鸿蒙操作系统的特点 鸿蒙&#xff0c;作为华为推…...

chrome extension插件替换网络请求中的useragent

感觉Chrome商店中的插件不能很好的实现自己想要的效果,那么就来自己动手吧。 本文以百度为例: 一般来说网页请求如下: 当前使用的useragent是User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safar…...

PHP基础【介绍,注释,更改编码,赋值,数据类型】

源码 <?php //单行注释 /* 多行注释 *///通过header()函数发送http头的请求信息用来指定页面的字符集编码 header("Content-type:text/html;Charsetutf-8"); //告诉浏览器&#xff0c;当前页面的内容类型是HTML&#xff0c;并且页面内容使用的是UTF-8编码。//ph…...

ASP.NET小型证券术语解释及翻译系统的设计与开发

摘 要 在系统设计上&#xff0c;综合各种翻译类型网站优缺点&#xff0c;设计出具有任何使用者都可添加术语信息的且只有管理员能够实现术语修改及删除等独特方式的术语查看管理系统。此方式能够使术语量快速增大&#xff0c;并且便于使用者及管理员操作&#xff0c;满足相互…...

硬件知识积累 音频插座的了解,看音频插座的原理图来了解音频插座的引脚。

1. 音频接口 音频插座是一种用于连接音频信号线路的电子元件&#xff0c;常见于音频设备&#xff08;如音响、耳机、话筒等&#xff09;中。它的主要作用是将电子信号转化为声音信号&#xff0c;以满足人们对于音乐、电影、游戏等方面的需求。 根据插头形状的不同&#xff0c;音…...

error LNK2001: 无法解析的外部符号 “__declspec(dllimport) public: __cdecl ......

运行程序时&#xff0c;报如上图所示错误&#xff0c;其中一条是&#xff1a; ReflectionProbe.obj : error LNK2001: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl osg::Object::Object(bool)" (__imp_??0ObjectosgQEAA_NZ) 报这个错误一般是因为…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

【2025年】解决Burpsuite抓不到https包的问题

环境&#xff1a;windows11 burpsuite:2025.5 在抓取https网站时&#xff0c;burpsuite抓取不到https数据包&#xff0c;只显示&#xff1a; 解决该问题只需如下三个步骤&#xff1a; 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列&#xff0c;以便知晓哪些列包含有价值的数据&#xff0c;…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持&#xff1a;CMake支持多种操作系统和编译器&#xff0c;使用同一份构建配置可以在不同的环境中使用 简化配置&#xff1a;通过CMakeLists.txt文件&#xff0c;用户可以定义项目结构、依赖项、编译选项等&#xff0c;无需手动编写复杂的构建脚本…...

echarts使用graphic强行给图增加一个边框(边框根据自己的图形大小设置)- 适用于无法使用dom的样式

pdf-lib https://blog.csdn.net/Shi_haoliu/article/details/148157624?spm1001.2014.3001.5501 为了完成在pdf中导出echarts图&#xff0c;如果边框加在dom上面&#xff0c;pdf-lib导出svg的时候并不会导出边框&#xff0c;所以只能在echarts图上面加边框 grid的边框是在图里…...