数据库必知词汇:数据定义语言DDL

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 数据定义语言(Data Definition Language, DDL)是SQL语言四大主要分类之一,是SQL语言集中负责数据结构定义与数据库对象定义的语言,最早是由 Codasyl(Conference on Data Systems Languages) 数据模型开始,现在被纳入 SQL 指令中作为其中一个子集。

|名词定义|
数据定义语言(Data Definition Language, DDL)是SQL语言四大主要分类之一,是SQL语言集中负责数据结构定义与数据库对象定义的语言,最早是由 Codasyl(Conference on Data Systems Languages) 数据模型开始,现在被纳入 SQL 指令中作为其中一个子集。

| 发展历程 |
SQL(Structure Query Language)语言是数据库的核心语言。数据控制语言DDL是SQL语言四大主要分类之一。SQL的发展是从1974年开始的,其发展过程如下:
1974年—–由Boyce和Chamberlin提出,当时称SEQUEL。
1976年—–IBM公司的Sanjase研究所在研制RDBMS SYSTEM R时改为SQL。
1979年—–ORACLE公司发表第一个基于SQL的商业化RDBMS产品。
1982年—–IBM公司出版第一个RDBMS语言SQL/DS。
1985年—–IBM公司出版第一个RDBMS语言DB2。
1986年—–美国国家标准化组织ANSI宣布SQL作为数据库工业标准。
SQL是一个标准的数据库语言,是面向集合的描述性非过程化语言。它功能强,效率高,简单易学易维护(迄今为止,我还没见过比它还好学的语言)。然而SQL语言由于以上优点,同时也出现了这样一个问题:它是非过程性语言,即大多数语句都是独立执行的,与上下文无关,而绝大部分应用都是一个完整的过程,显然用SQL完全实现这些功能是很困难的。所以大多数数据库公司为了解决此问题,作了如下两方面的工作:(1)扩充SQL,在SQL中引入过程性结构;(2)把SQL嵌入到高级语言中,以便一起完成一个完整的应用。

| 技术特点 |
DDL由CREATE、ALTER与DROP三个语法所组成,主要负责负责创建、修改、删除表、索引、视图、函数、存储过程和触发器等对象。

  • CREATE语句负责数据库对象的建立,比如数据库、数据表、数据库索引、预存程序、用户函数、触发程序或是用户自定型别等对象,都可以使用CREATE命令来建立,而为了各式数据库对象的不同,CREATE 也有很多的参数。
  • ALTER语句负责数据库对象修改的指令,相较于 CREATE 需要定义完整的数据对象参数,ALTER则是可依照要修改的幅度来决定使用的参数,因此使用较为简单。
  • DROP语句则是删除数据库对象的指令,并且只需要指定要删除的数据库对象名称即可,在 DDL 语法中算是最简单的。

目前大多数的数据库管理系统都支持对数据库对象的DDL操作,部份数据库可把DDL放在交易指令中,也就是它可以被撤回。较新版本的DBMS会加入DDL专用的触发程序,让数据库管理员可以追踪来自DDL的修改。

| 相关词 |
SQL - Structure Query Language语言是数据库的核心语言
CREATE – 用于创建数据库或其对象(如表、索引、函数、视图、存储过程和触发器)
ALTER –用于修改数据库的对象
DROP – 用于从数据库中删除对象

| 案例展示 |
使用基于DDL的数据库。
MySQL - 是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。
Oracle - 是是甲骨文公司的一款关系数据库管理系统。
Hive – 是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载。
HBase –是一个分布式的、面向列的开源数据库。

| 资料来源 |
MySQL Introduction https://www.mysql.com/MySQL Tutorials https://www.w3schools.in/mysql/ddl-dml-dcl/
SQL Introduction https://www.w3schools.com/sql/sql_intro.asp
杨波,许丽娟主编;陈刚,骆珍仪,李思思副主编.电子商务概论:北京邮电大学出版社,2014.08
李武 姚珺.数据库原理及应用:哈尔滨工程大学出版社,2011

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
2月前
|
存储 JSON 关系型数据库
【干货满满】解密 API 数据解析:从 JSON 到数据库存储的完整流程
本文详解电商API开发中JSON数据解析与数据库存储的全流程,涵盖数据提取、清洗、转换及优化策略,结合Python实战代码与主流数据库方案,助开发者构建高效、可靠的数据处理管道。
|
26天前
|
存储 数据管理 数据库
数据字典是什么?和数据库、数据仓库有什么关系?
在数据处理中,你是否常困惑于字段含义、指标计算或数据来源?数据字典正是解答这些问题的关键工具,它清晰定义数据的名称、类型、来源、计算方式等,服务于开发者、分析师和数据管理者。本文详解数据字典的定义、组成及其与数据库、数据仓库的关系,助你夯实数据基础。
数据字典是什么?和数据库、数据仓库有什么关系?
|
5月前
|
存储 缓存 数据库
数据库数据删除策略:硬删除vs软删除的最佳实践指南
在项目开发中,“删除”操作常见但方式多样,主要分为硬删除与软删除。硬删除直接从数据库移除数据,操作简单、高效,但不可恢复;适用于临时或敏感数据。软删除通过标记字段保留数据,支持恢复和审计,但增加查询复杂度与数据量;适合需追踪历史或可恢复的场景。两者各有优劣,实际开发中常结合使用以满足不同需求。
385 4
|
1月前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL数据库的WAL日志与数据写入的过程
PostgreSQL中的WAL(预写日志)是保证数据完整性的关键技术。在数据修改前,系统会先将日志写入WAL,确保宕机时可通过日志恢复数据。它减少了磁盘I/O,提升了性能,并支持手动切换日志文件。WAL文件默认存储在pg_wal目录下,采用16进制命名规则。此外,PostgreSQL提供pg_waldump工具解析日志内容。
128 0
|
5月前
|
SQL 人工智能 数据可视化
16.1k star! 只需要DDL就能一键生成数据库关系图!开源神器ChartDB让你的数据结构"看得见"
ChartDB是一款开源的数据库可视化神器,通过一句智能查询就能自动生成专业的数据库关系图。无需安装客户端、不用暴露数据库密码,打开网页就能完成从数据建模到迁移的全流程操作,堪称开发者的"数据库透视镜"。
1070 67
|
3月前
|
存储 SQL Java
数据存储使用文件还是数据库,哪个更合适?
数据库和文件系统各有优劣:数据库读写性能较低、结构 rigid,但具备计算能力和数据一致性保障;文件系统灵活易管理、读写高效,但缺乏计算能力且无法保证一致性。针对仅需高效存储与灵活管理的场景,文件系统更优,但其计算短板可通过开源工具 SPL(Structured Process Language)弥补。SPL 提供独立计算语法及高性能文件格式(如集文件、组表),支持复杂计算与多源混合查询,甚至可替代数据仓库。此外,SPL 易集成、支持热切换,大幅提升开发运维效率,是后数据库时代文件存储的理想补充方案。
|
3月前
|
SQL 存储 关系型数据库
一、数据库和表的基本操作 DDL
在使用 MySQL 做项目或写业务逻辑时,离不开对数据库和数据表的基本操作。我们这次从创建数据库讲起,一步步带你掌握如何新建表、查看表结构、修改字段、重命名、删除等常用命令。每一个知识点都有示例代码可直接上手,还准备了一套完整的动手练习,帮助你把概念变成熟练技能。如果你刚入门 SQL,或者想系统梳理一遍 DDL 基础,这篇会是不错的起点。
216 0
|
8月前
|
数据采集 数据库 Python
有哪些方法可以验证用户输入数据的格式是否符合数据库的要求?
有哪些方法可以验证用户输入数据的格式是否符合数据库的要求?
363 75
|
6月前
|
数据库 Python
【YashanDB知识库】python驱动查询gbk字符集崖山数据库CLOB字段,数据被驱动截断
【YashanDB知识库】python驱动查询gbk字符集崖山数据库CLOB字段,数据被驱动截断

热门文章

最新文章