DBMS中DDL和DML的区别

DDL和DML都是Database Management System(DBMS)中的重要组成部分。DDL代表Data Definition Language,DML代表Data Manipulation Language。DDL和DML之间存在明显的区别,下面将详细解释这些区别。

DDL(Data Definition Language)

数据定义语言DDL用于创建和修改数据库中对象的结构。DDL处理对象的所在、属性和其它基本定义问题,包括表、视图、索引和存储过程等。DDL语句在执行时可以自动提交修改事务,也可以手动提交修改事务。下面是一些常用的DDL语句:

CREATE

CREATE语句用于创建新的对象。下面是创建一个表的示例:

CREATE TABLE emp (
    emp_id INT PRIMARY KEY,
    emp_name VARCHAR(100) NOT NULL,
    emp_age INT,
    emp_sal INT,
    emp_address VARCHAR(200)
);

此语句将创建一个名为“emp”的新表,该表包含5个列:emp_id、emp_name、emp_age、emp_sal和emp_address。

ALTER

ALTER语句用于修改现有对象的结构。例如,下面的ALTER语句将表“emp”中的列“emp_address”修改为“emp_address1”:

ALTER TABLE emp RENAME COLUMN emp_address TO emp_address1;

DROP

DROP语句用于删除现有对象。例如,下面的DROP语句将删除表“emp”:

DROP TABLE emp;

DML(Data Manipulation Language)

数据操作语言DML用于处理数据,例如查询、插入、更新或删除。DML语句不能自动提交修改事务。要提交修改事务,必须使用COMMIT语句。下面是一些常用的DML语句:

SELECT

SELECT语句用于从一个或多个表中选择(查询)数据。例如,下面的SELECT语句将选择表“emp”中所有列:

SELECT * FROM emp;

INSERT

INSERT语句用于向表中插入新行。例如,下面的INSERT语句将向表“emp”中插入一行:

INSERT INTO emp (emp_id, emp_name, emp_age, emp_sal, emp_address)
VALUES (1, 'John', 25, 5000, 'First Street, New York');

此语句将向表“emp”中插入一行,该行包括5个值,分别对应于每个列:emp_id、emp_name、emp_age、emp_sal和emp_address。

UPDATE

UPDATE语句用于更新表中现有行的数据。例如,下面的UPDATE语句将表“emp”中ID为1的记录中“emp_salary”改为6000:

UPDATE emp SET emp_sal=6000 WHERE emp_id=1;

DELETE

DELETE语句用于删除表中的行。例如,下面的DELETE语句将删除表“emp”中ID为1的记录:

DELETE FROM emp WHERE emp_id=1;

总结

DDL和DML的区别在于DDL处理数据库对象的创建、修改和删除,DML用于操作数据库中的数据。DDL语句自动提交修改事务,而DML语句要手动提交修改事务。上文提到的CREATE、ALTER和DROP等语句都是DDL语句。而SELECT、INSERT、UPDATE和DELETE等语句则是DML语句。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:DBMS中DDL和DML的区别 - Python技术站

(0)
上一篇 2023年3月27日
下一篇 2023年3月27日

相关文章

  • MySql安装与使用图文教程【推荐】

    MySql安装与使用图文教程【推荐】 MySQL是一个开源的关系型数据库管理系统,它是一种基于客户端/服务器模式工作的数据库系统。在本教程中,我们将学习如何安装并使用MySQL。以下是该过程的详细步骤: 步骤1:下载MySQL 为了使用MySQL,您需要下载它。您可以从官方网站MySQL Downloads下载最新的MySQL版本。选择适合您操作系统的版本进…

    database 2023年5月22日
    00
  • Docker实现Mariadb分库分表及读写分离功能

    准备工作 在开始分库分表及读写分离功能的实现前,需要完成以下准备工作: 安装和配置Docker 创建两个或以上的Mariadb容器 使用mydumper工具备份原始数据库中的表 在备份数据上运行分库分表工具 按照需要在不同的数据库中保存备份数据 实现分库分表功能 按照以下步骤实现分库分表功能: 创建用于存储分片的数据容器。可使用以下命令创建数据容器: doc…

    database 2023年5月21日
    00
  • MySQL case when使用方法实例解析

    MySQL case when使用方法实例解析 一、介绍 MySQL中的case when语法可以让我们更加灵活地处理数据,可以根据指定的条件返回不同的结果。使用case when结构通常会为在单个查询中使用IF语句或选择性SUM做法提供更清晰和可读性更高的代码结构。 二、基础语法 以下是MySQL case when基础语法的示例: SELECT colu…

    database 2023年5月22日
    00
  • 一个多表查询的SQL语句

    下面是详细讲解“一个多表查询的SQL语句”的完整攻略。 完整攻略 Step 1:确定数据表的关系 在进行多表查询之前,我们需要先确定所涉及的数据表之间的关系,即它们之间的连接方式。 常见的数据表连接方式有以下三种: 内连接(INNER JOIN):返回匹配两个表中指定列并且存在于两个表中的行。 外连接(OUTER JOIN):返回匹配两个表中指定列的所有行,…

    database 2023年5月21日
    00
  • 使用python和Django完成博客数据库的迁移方法

    为了完成使用Python和Django完成博客数据库的迁移,需要按步骤进行。 步骤1:确定迁移方案 一个成功的数据迁移,必须基于一个协议,它定义了数据如何转移。在Django中,使用“迁移”这个概念来处理模型数据的变化,它会跟踪模型的版本变化并在数据库中应用这些变化。 在进行具体的迁移操作前,我们需要先确定好整个迁移方案,根据实际情况和需求制定好迁移流程,具…

    database 2023年5月21日
    00
  • 详解MySQL中的缓冲池(buffer pool)

    详解MySQL中的缓冲池(buffer pool) 什么是缓冲池? 缓冲池是MySQL中专门用来缓存磁盘块数据的内存区域,也被称为buffer pool,是MySQL中整个数据存储机制的核心部分。 MySQL在运行过程中,所有的数据都是通过磁盘读取或存储的。这种IO操作对于数据库来说非常耗时,所以为了提高查询效率,MySQL会尝试在内存中尽可能缓存磁盘块数据…

    database 2023年5月22日
    00
  • 一文带你了解MySQL中的事务

    一文带你了解 MySQL 中的事务 什么是事务? 事务是指作为单个逻辑工作单元执行的一系列操作。这些操作必须全部执行或者全部不执行,如果其中有任何一个操作失败,则整个事务都必须回滚到起始状态。 MySQL 中的事务 MySQL 中的事务是通过 commit 和 rollback 语句进行控制的。commit 语句用于提交事务,将进行的所有更改保存到数据库中,…

    database 2023年5月22日
    00
  • Linux中更改转移mysql数据库目录的步骤

    要在Linux中更改转移MySQL数据库目录,需要完成以下步骤: 停止MySQL服务:可以使用如下命令停止MySQL服务: sudo systemctl stop mysql 备份MySQL数据库:移动MySQL目录可能会导致数据丢失,因此在移动之前最好对其进行备份。可以使用如下命令备份MySQL数据库: sudo mysqldump -u root -p …

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部