热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据库的ddl语言和dml语言,数据库中ddl是什么

参照完整性约束:一个关系中给定属性集上的取值也在另外一个关系的某一属性集的取值中出现。断言:数据库需要某时刻满足某一条件。授权:对于不同用户在数据库中不同数据值上允许不同的访问

按照数据库系统概念 来说

数据库系统提供 数据库定义语言(Data Definiton Language) 来定义数据模式 和 数据操纵语言(Data manipulation Language) 来表达数据库的查询和更新.

而数据库定义语言和数据库操纵语言构成了SQL语言的不同部分.



什么是DDL? Data Definiton Language 数据库定义语言。 数据库模式是通过一系列DDL定义来说明的。DDL也可以用于定义数据其他特征。(物理层和逻辑层操作)

数据存储和定义:数据库系统所使用的存储结构和访问方式是通过DDL语句来说明的.

一致性约束(consistency constraint):DDL语言提供了约束性工具,约束可以是关于数据库的任意谓词(及动作)。

一致性约束包括:以下四种

域约束(domain constraints): 每个属性都必须对应一个所有可能的取值的域。声明一种数据属于一个具体的域就相当于约束它可以取的值。(变量声明、列定义)

参照完整性约束(referential integrity):一个关系中给定属性集上的取值也在另外一个关系的某一属性集的取值中出现。

断言(assertion):数据库需要某时刻满足某一条件。实例约束。

授权(authorization): 对于不同用户在数据库中不同数据值上允许不同的访问类型。通常授权分为 读权限、插入权限、更新权限、删除权限。

什么是DML? Data manipulation Language 数据库操纵语言。 使用户可以访问或操纵那些按照某中适当的数据模型组织起来的数据。(视图层操作)

通常有两种类型的数据库操纵语言

过程化DML 要求用户指定需要什么数据,以及如何获得数据库。

声明式DML 只要求用户指定需要什么数据,而不指明如何获得这些数据。

元数据(metadata):关于数据的数据,主要描述数据特性。

数据字典(data dictionary):用于存放元数据和DDL的输出。可以把数据字典看作是一种表,这种表只能由数据库系统本身访问和修改。再读取和修改实际数据前,数据库系统需要参考数据字典里面的元数据。

(引用概念均来自 数据库系统概念第六版)


推荐阅读
  • vue使用
    关键词: ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • VueCLI多页分目录打包的步骤记录
    本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ... [详细]
  • springmvc学习笔记(十):控制器业务方法中通过注解实现封装Javabean接收表单提交的数据
    本文介绍了在springmvc学习笔记系列的第十篇中,控制器的业务方法中如何通过注解实现封装Javabean来接收表单提交的数据。同时还讨论了当有多个注册表单且字段完全相同时,如何将其交给同一个控制器处理。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • 在springmvc框架中,前台ajax调用方法,对图片批量下载,如何弹出提示保存位置选框?Controller方法 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • MVC设计模式的介绍和演化过程
    本文介绍了MVC设计模式的基本概念和原理,以及在实际项目中的演化过程。通过分离视图、模型和控制器,实现了代码的解耦和重用,提高了项目的可维护性和可扩展性。详细讲解了分离视图、分离模型和分离控制器的具体步骤和规则,以及它们在项目中的应用。同时,还介绍了基础模型的封装和控制器的命名规则。该文章适合对MVC设计模式感兴趣的读者阅读和学习。 ... [详细]
  • 本文介绍了Sencha Touch的学习使用心得,主要包括搭建项目框架的过程。作者强调了使用MVC模式的重要性,并提供了一个干净的引用示例。文章还介绍了Index.html页面的作用,以及如何通过链接样式表来改变全局风格。 ... [详细]
  • 从零基础到精通的前台学习路线
    随着互联网的发展,前台开发工程师成为市场上非常抢手的人才。本文介绍了从零基础到精通前台开发的学习路线,包括学习HTML、CSS、JavaScript等基础知识和常用工具的使用。通过循序渐进的学习,可以掌握前台开发的基本技能,并有能力找到一份月薪8000以上的工作。 ... [详细]
  • Activiti7流程定义开发笔记
    本文介绍了Activiti7流程定义的开发笔记,包括流程定义的概念、使用activiti-explorer和activiti-eclipse-designer进行建模的方式,以及生成流程图的方法。还介绍了流程定义部署的概念和步骤,包括将bpmn和png文件添加部署到activiti数据库中的方法,以及使用ZIP包进行部署的方式。同时还提到了activiti.cfg.xml文件的作用。 ... [详细]
  • MySQL数据库锁机制及其应用(数据库锁的概念)
    本文介绍了MySQL数据库锁机制及其应用。数据库锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,数据是一种供许多用户共享的资源,如何保证数据并发访问的一致性和有效性是数据库必须解决的问题。MySQL的锁机制相对简单,不同的存储引擎支持不同的锁机制,主要包括表级锁、行级锁和页面锁。本文详细介绍了MySQL表级锁的锁模式和特点,以及行级锁和页面锁的特点和应用场景。同时还讨论了锁冲突对数据库并发访问性能的影响。 ... [详细]
  • 开发笔记:spring boot项目打成war包部署到服务器的步骤与注意事项
    本文介绍了将spring boot项目打成war包并部署到服务器的步骤与注意事项。通过本文的学习,读者可以了解到如何将spring boot项目打包成war包,并成功地部署到服务器上。 ... [详细]
  • Java如何导入和导出Excel文件的方法和步骤详解
    本文详细介绍了在SpringBoot中使用Java导入和导出Excel文件的方法和步骤,包括添加操作Excel的依赖、自定义注解等。文章还提供了示例代码,并将代码上传至GitHub供访问。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
author-avatar
十九世纪末的伦敦_371
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有