数据库视图

mysql 其他基本操作

雨燕双飞 提交于 2020-02-04 19:19:46
介绍数据库的其他基本操作:索引、视图,导入和导出,备份和恢复等。 1.索引 索引是一种与表有关的结构,它的作用相当于 书的目录 ,可以根据目录中的页码快速找到所需的内容。 当表中有大量记录时,若要对表进行查询,没有索引的情况是全表搜索:将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录。这样做会消耗大量数据库系统时间,并造成大量磁盘 I/O 操作。 而如果在表中已建立索引,在索引中找到符合查询条件的索引值,通过索引值就可以快速找到表中的数据,可以大大 加快查询速度 。 ALTER TABLE 表名字 ADD INDEX 索引名 (列名); CREATE INDEX 索引名 ON 表名字 (列名); ex: //在employee表的id列上建立名为idx_id的索引ALTER TABLE employee ADD INDEX idx_id (id); //在employee表的name列上建立名为idx_name的索引CREATE INDEX idx_name ON employee (name); 查看索引 SHOW INDEX FROM 表名字; 2.视图 视图是从一个或多个表中导出来的表,是一种 虚拟存在的表 。它就像一个窗口,通过这个窗口可以看到系统专门提供的数据,这样,用户可以不用看到整个数据库中的数据,而只关心对自己有用的数据。 注意理解视图是虚拟的表:

数据库设计中的12个技巧

不问归期 提交于 2020-02-04 10:43:13
数据库设计中的12个技巧 1.原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张 原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一 张原始单证对应多个实体,或多张原始单证对应一个实体。这里的实体可以理解为基本表。 明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情 况表、社会关系表、工作简历表。这就是“一张原始单证对应多个实体”的典型例子。 2.主键与外键 一般而言,一个实体不能既无主键又无外键。在E—R图中,处于叶子部位的实体,可 以定义主键,也可以不定义主键(因为它无子孙),但必须要有外键(因为它有父亲)。 主键与外键的设计,在全局数据库的设计中,占有重要地位。当全局数据库的设计完成 以后,有个美国数据库设计专家说:“键,到处都是键,除了键之外,什么也没有”,这就 是他的数据库设计经验之谈,也反映了他对信息系统核心(数据模型)的高度抽象思想。因为: 主键是实体的高度抽象,主键与外键的配对,表示实体之间的连接。 3.基本表的性质 基本表与中间表、临时表不同,因为它具有如下四个特性: (1)原子性。基本表中的字段是不可再分解的。 (2)原始性。基本表中的记录是原始数据(基础数据)的记录。 (3)演绎性

数据库设计中的13个技巧

 ̄綄美尐妖づ 提交于 2020-02-04 10:27:06
1.原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情况表、社会关系表、工作简历表。这就是“一张原始单证对应多个实体”的典型例子。 2.主键与外键 一般而言,一个实体不能既无主键又无外键。在E—R图中,处于叶子部位的实体,可以定义主键,也可以不定义主键(因为它无子孙),但必须要有外键(因为它有父亲)。 主键与外键的设计,在全局数据库的设计中,占有重要地位。当全局数据库的设计完成以后,有个美国数据库设计专家说:“键,到处都是键,除了键之外,什么也没有”,这就是他的数据库设计经验之谈,也反映了他对信息系统核心(数据模型)的高度抽象思想。因为:主键是实体的高度抽象,主键与外键的配对,表示实体之间的连接。 3.基本表的性质 基本表与中间表、临时表不同,因为它具有如下四个特性: (1)原子性。基本表中的字段是不可再分解的。 (2)原始性。基本表中的记录是原始数据(基础数据)的记录。 (3)演绎性。由基本表与代码表中的数据,可以派生出所有的输出数据。 (4

Hbase概述

前提是你 提交于 2020-02-04 09:05:47
Hbase介绍 HBase 是基于 Apache Hadoop 的面向列的 NoSQL 数据库,是 Google 的 BigTable 的开源实现。 HBase 是一个针对半结构化数据的开源的、多版本的、可伸缩的、高可靠的、高性能的、分布式的和面向列的动态模式数据库。 HBase 和传统关系数据库不同,它采用了 BigTable 的数据模型增强的稀疏排序映射表(Key/Value),其中, 键由行关键字、列关键字和时间戳构成 。 HBase 提供了对大规模数据的随机、实时读写访问。 HBase 的目标是存储并处理大型的数据,也就是仅用普通的硬件配置,就能够处理上千亿的行和几百万的列所组成的超大型数据库。 Hadoop 是一个高容错、高延时的分布式文件系统和高并发的批处理系统,不适用于提供实时计算, 而 HBase 是可以提供 实时计算(占用大量的内存) 的分布式数据库,数据被保存在 HDFS (分布式文件系统)上,由 HDFS 保证其高容错性。 HBase 上的 数据是以二进制流的形式存储在 HDFS 上的数据块中的 ,但是,HBase 上的存储数据对于 HDFS 是透明的。 HBase 可以直接使用本地文件系统,也可以使用 Hadoop 的 HDFS。 HBase 中保存的 数据可以使用 MapReduce 来处理,它将数据存储和并行计算有机地结合在一起。 HBase 是

MySQL之View(视图)

谁都会走 提交于 2020-02-04 02:56:04
基本知识 ①含义:虚拟表,mysql5.0.1出现的新特性,是通过表动态生成的数据 使用场景:在多个地方用到同样的查询结果,使用的sql语句较复杂,或需求多变时使用(可以保证与数据库进行连接的接口不做更改,只改变视图) ②特点:视图中的数据来自于查询所使用的表,是在使用视图时动态生成的,只保存sql逻辑,不保存查询结果 ③创建:CREATE VIEW 视图名 [(列的新名)] AS SELECT语句 ④优点:重用sql语句、简化复杂sql操作、保护数据 视图的修改 ①CREATE OR REPLACE VIEW 视图名 [(列的新名)] AS SELECT语句 即:视图存在就修改,不存在就创建 ②ALTER VIEW 视图名 [(列的新名)] AS SELECT语句 删除视图 DROP VIEW 视图名,视图名,… #可一次删除多个 查看视图 ①DESC VIEW 视图名 ②SHOW CREATE VIEW 视图名[\G(格式,按行显示)] #可以查看到具体的信息(创建过程) 视图的更新 ①无法对视图进行重命名 ②当视图关联的表中添加新的字段时,视图中是可以查询到新字段,两者是完全相同的,同时改变 ③可以对视图进行数据的增删改,同时会影响到与其关联的表 无法更新视图的几种情况: 包含分组、DIATINCT、HAVING、UNION[all]关键字(视图的一个数据数据由一组数据所得到

.NET MVVM设计模式简介

天涯浪子 提交于 2020-02-04 01:02:09
MVVM模式能够帮你把你程序的业务与展现逻辑从用户界面干净地分离开。保持程序逻辑与界面分离能够帮助解决很多开发以及设计问题,能够使你的程序能更容易的测试,维护与升级。它也能很大程度的增加代码重用性,并让开发者与界面设计者更容易地相互合作。 使用MVVM模式,程序的UI和其背后的展现与业务逻辑将被分离至三个类中: 1-视图,封装UI与UI逻辑 2-模型视图,封装展示逻辑与状态 3-模型,封装程序的业务逻辑以及数据 MVVM模式是展示-模型模式的变种,它优化了一些WPF的核心特性,例如数据绑定,数据模版,命令以及行为。在MVVM模式中,视图通过数据绑定以及命令行与视图模型交互,并改变事件通知。视图模型查询观察并协调模型更新,转换,校验以及聚合数据,从而在视图显示。 下图展示了MVVM类以及它们之间的交互: 视图类 视图的责任便是定义用户在屏幕上能看到的一切的结构以及外观。理想的视图背后的代码只包含调用InitializeComponent方法的构造函数。视图通常扮演以下关键角色: 视图是可视化元素,例如窗口,页面,用户控件或者数据模版 视图定义了包含在视图里的控件以及可视化层以及样式 视图通过DataContext属性应用视图模型 绑定了控件以及数据的属性以及命令被视图模型暴露出来 视图可以定制化视图与视图模型间数据绑定行为 视图定义以及处理UI可视化行为例如动画

MVC设计模式简单说明

杀马特。学长 韩版系。学妹 提交于 2020-02-02 02:53:18
MVC(Model,View和Controller)设计模式是一种目前广泛使用的软件设计模式。近年来,随着Java EE的成熟,MVC成为在Java EE 平台上最常见的一种设计模式,是广大Java开发者非常感兴趣的设计模型。 MVC设计模式: 1、模型 Model部分包括业务逻辑层和数据库访问层。在Java Web应用程序中,业务逻辑层一般由JavaBean或EJB构建。Model部分就是业务流程或状态的处理以及业务规则的制定。业务模型的设计可以说是MVC最主要的组件。MVC并没有提供模型的设计方法,只是要求用户应该组织管理这些模型,以便于模型的重构和提高重用性。 2、视图 在Java Web应用程序中,View部分一般用JSP、HTML以及其他的视图技术构建,也可以使用XHTML、XML、Applet或者JavaScript等。客户在View部分提交请求,在业务逻辑层处理后,把处理结果又返回给View部分显示出来。因此,View部分也是Java Web应用程序的用户界面。一个Web项目可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理以及响应用户的请求,而不包括在视图上的业务流程的处理。业务流程处理由模型负责。 3、控制器 Controller部分由Servlet组成。当用户请求从视图部分传过来时,控制器调用相应的模型在控制器中进行业务的处理

iOS VIPER 架构解读

巧了我就是萌 提交于 2020-02-01 05:17:51
苹果官方推荐的 APP 架构是 MVC 架构,实际上它并不是传统的三层架构,而是两层架构,即整个 APP 由“模型”和“视图控制器”两层构成。因此视图控制器显得尤其重要,它的重要体现在两个方面: ViewController 是 iOS APP 中最重要的“基石”,没有 ViewController 就没有 APP——iOS 9 以后,要求 UIWindow 必须要有一个 rootViewController,否则 APP 不能运行。 后面所有的 MVP、MVVM 和 VIPER 架构都是基于 ViewController 的。 正因为其重要,所以 ViewController 才会显得“臃肿”。为了给 ViewController 减肥,许多新的架构应运而生。比如 MVVM、MVP,都试图将“视图控制器”拆分成更多的层级,从而减轻视图控制器的负担。 VIPER 也不例外。 VIPER 架构 下图阐释了所谓的 VIPER 架构: 首先简单解释一下: E - Entity,实体。 对应了 MVC 中的模型层。 然后 VIPER 将 MVC 中的视图控制器进一步分为了以下几层,即上图红框中的所有组件,它们其实都是由 MVC 中视图控制器(即 ViewController)中演变而来的: R - Router,路由器。负责视图控制器相关的导航(即 Segue),包括进来的导航和出去的导航

Django

前提是你 提交于 2020-01-31 11:07:29
目录 常见的web框架MVC模型 MVC模型的简介 MVC模型的原理 MVT模型 MVT模型的简介 MVT模型的原理 Django Django官方文档 Django2.0开发文档 虚拟环境 什么是虚拟环境 创建虚拟环境 安装虚拟环境 安装虚拟语言环境拓展包 编辑 .bashrc文件 使用source .bashrc命令将 .bashrc文件生效 使用虚拟环境的命令 创建虚拟环境的命令 进入虚拟环境的命令 退出虚拟环境的命令 查看当前所有的虚拟环境的命令 删除虚拟环境 虚拟环境中安装包的命令 安装指定版本的包或者软件的命令 查看当前虚拟环境安装的所有包的命令 创建Django项目 创建django项目 创建django应用 项目与应用的联系 2020-01-13 22:45:36 星期一 ORM框架 模型类生成表: Django1.8.2开发文档模板类 先在model.py文件中创建模型类。 生成迁移文件 生成迁移表 Django的后台管理 本地化 创建超级管理员 登录管理员 增删改查 自定义管理页面 2020-01-29 22:01:39 星期三 视图函数的使用 视图函数的基本使用规则 视图函数配置 常见的web框架MVC模型: MVC模型的简介 : MVC(Model View Controller)的中文名称叫做模型视图控制器模型,就是因为它的英文名字太流行了

深入理解MVC与MVP

折月煮酒 提交于 2020-01-31 06:02:45
http://www.cnblogs.com/seaky/archive/2011/04/06/1982533.html 在深入分析MVC和MVP之前,我们有必要回顾下经典的三层架构。分层是计算机学科解决许多问题的法宝。在企业应用和互联网应用中,分层架构得到了非常广泛的应用。3层架构是各种层架构的基础,3层架构简单描述如下: 展示层 :展示层有两个职责 1负责展示业务数据 2提供用户输入的接口 业务逻辑层 :业务逻辑层的职责是接受展示层的输入,并经过业务处理逻辑,返回业务数据。 数据访问层 :数据访问层提供系统数据的存取服务。 从架构到实现是存在一些"距离"的,架构的实现是要基于应用场景,实现方案也有所不一样。 本文考虑两种应用场景来讨论MVC和MVP: 第一是c/s架构,也就是所谓的胖客户端,像RIA属于这类。Flex,ajax等技术都可以归结到RIA,手机APP,winform连接到远程服务的应用都可以归结这一类。 第二是b/s架构(某些web程序部分的利用了ajax,排除利用ajax的这部分),也就是瘦客户端,b是指浏览器,在b/s架构中http协议是客户端和服务端通信的唯一协议,而且是通过浏览器来展示数据的。 基于层的架构的实现中的一个问题就是层与层之间如何通信,以及如何在层间传递数据。 首先看看数据访问层和业务层之间的通信和数据传递。 (注意, 数据访问层不保存持久数据