数据库中的元数据

刘耀铭同学元数据系列作品的第三篇,大家支持!

今天跟大家谈谈数据库中的元数据

数据库中的元数据无非就是对数据库中数据的描述与定义。

我们先举个现实生活中的栗子,假设小明想看某个电影,但是他忘记了电影的名称?

他可以根据电影类型、主演、上映的大致时间来搜索出他想看到的某个电影,那么这些电影类型、主演、上映时间就是对这个电影的描述,这些便是该电影的元数据。

现在换成数据库,在关系型数据库管理系统 (DBMS) 中,元数据描述了数据的结构和意义。比如在管理,维护Mysql 或者是开发数据库应用程序的时候,我们经常要获取一些涉及到数据库架构的信息:

  • 数据库中的表和视图的个数以及名称;
  • 表或者视图中列的个数以及每一列的名称、数据类型、长度、精度、描述等;
  • 表上定义的约束;
  • 表上定义的索引以及主键/外键的信息。

那么在mysql中如何获取数据库的元数据呢?

一般有一下三种方式

  • show语句

【example】:show databases; --列出所有数据库

show createdatabasedb_name; --查看数据库的DDL

  • 从INFORMATION_SCHEMA数据库里查询相关表

INFORMATION_SCHEMA是MySQL自带的一个系统数据库,它里面存储了所有的元数据,通过select里面的相关表就可以获取你想要的元数据。和show语句相比,它比较麻烦,但它的好处是标准的SQL语句,更具有可移植性,且更灵活,可以通过各种表达式获取你真正需要的信息。命令行程序,如mysqlshow, mysqldump

【example】:mysqlshow --列出所有数据库

mysqlshow db_name --列出给定数据库的所有表

原文发布于微信公众号 - 大数据和云计算技术(jiezhu2007)

原文发表时间:2016-12-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2152
来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3145
来自专栏java 成神之路

使用 NIO 实现 echo 服务器

4647
来自专栏张善友的专栏

Silverlight + Model-View-ViewModel (MVVM)

     早在2005年,John Gossman写了一篇关于Model-View-ViewModel模式的博文,这种模式被他所在的微软的项目组用来创建Expr...

2968
来自专栏杨龙飞前端

scrollto 到指定位置

2504
来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.2K7
来自专栏闻道于事

js登录滑动验证,不滑动无法登陆

js的判断这里是根据滑块的位置进行判断,应该是用一个flag判断 <%@ page language="java" contentType="text/html...

6818
来自专栏落花落雨不落叶

canvas画简单电路图

61811
来自专栏张善友的专栏

Miguel de Icaza 细说 Mix 07大会上的Silverlight和DLR

Mono之父Miguel de Icaza 详细报道微软Mix 07大会上的Silverlight和DLR ,上面还谈到了Mono and Silverligh...

2707
来自专栏陈仁松博客

ASP.NET Core 'Microsoft.Win32.Registry' 错误修复

今天在发布Asp.net Core应用到Azure的时候出现错误InvalidOperationException: Cannot find compilati...

4848

扫码关注云+社区