`
totoxian
  • 浏览: 1074367 次
  • 性别: Icon_minigender_2
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

抱SQL SERVER大腿之我爱用视图

阅读更多

SQL SERVER大腿之我爱用视图

左直拳

我们拥有一个巨大的表,两千多万条记录。也许在行家眼里,两千多万条记录顶多算条毛,不过这条毛也忒粗壮了一点:我们的数据库占用的空间已经达到<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="5" unitname="g"><span lang="EN-US" style="FONT-SIZE: 12pt"><font face="Times New Roman">5G</font></span></chmetcnv>多了。不要以为是日志文件在搞鬼,日志文件可以自动收缩的,最多不超过<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="100" unitname="m"><span lang="EN-US" style="FONT-SIZE: 12pt"><font face="Times New Roman">100M</font></span></chmetcnv>

这样子就给我们备份、同步带来很大的麻烦。备份、压缩、下载,谁见谁害怕。

昨天想了个办法,将这个巨无霸分出去了。分到了另一个数据库上。虽说有这么多记录,不过这些记录并不是太重要,如果放在一个分布式的系统里面看,它没有同步的必要。

思想如下:

1、将大表转移到另一个数据库上

2、原有数据库建立一个视图,相同结构,相同名字

由于该视图是单表视图,结构跟表又一致,名字也跟表名一样,那么操作这个视图,无论是查询、插入、更新或删除,都跟直接操作这个表没什么区别。这样代码也无须做任何的修改。平滑过渡。

该表上建立的索引,视图也一样的使用。

以前我见过有人为了避免某个表过大,采用的方法是建立12个结构一样的表,每个月用一个。当时就想,这种做法好是好,但代码岂不是烦死了。现在想起来,查询的时候,可以使用视图将12个表用 UNION ALL 结合起来,当一个表用。

视图在分布式数据库中使用应该很方便。

分享到:
评论

相关推荐

    清除sqlserver无效的视图及存储过程

    在SQL Server数据库管理中,有时由于项目的持续优化和升级,可能会遗留一些无效的视图或存储过程。这些对象可能由于代码改动、表结构调整或者不再被引用而变得无用,但它们依然存在于数据库中,占用资源并可能导致...

    三个SQL视图查出所有SQL Server数据库字典

    下面将详细介绍如何通过三个SQL视图来查询SQL Server中的所有数据库字典。 ### SQL Server数据库字典简介 在SQL Server中,数据库字典是存储有关数据库元数据(如表、列、索引等)的系统表和视图的集合。这些元...

    细说SQL Server中的视图

    1,什么是视图? 2,为什么要用视图; 3,视图中的ORDER BY; 4,刷新视图; ...当你查询视图时,无论是获取数据还是更新数据,Sql server都用视图的定义来访问基础表;  视图在我们日常操作也扮演

    SQL Server索引视图及性能提高简介

    索引视图必须在SQL Server 2000的企业版或开发者版中使用,因为它们需要额外的资源来维护。 索引视图的性能提升体现在几个关键方面: 1. **预先计算聚合**:索引视图可以预先计算并存储聚合结果,避免了查询执行时...

    sql Server 视图管理

    ### SQL Server 视图管理深度解析 #### 一、视图概念与重要性 视图在SQL Server中扮演着至关重要的角色,它本质上是存储在数据库中的查询,提供了一种虚拟表的方式,允许用户从一个或多个表中选择数据。视图并不...

    SQL Server数据库实验指导书 实验教程 数据库实验05 视图的创建与使用.pdf

    2.掌握SQL Server Management Studio的启动和使用。 3.掌握SQL Server 2005服务器的配置和注册。 4.掌握SQL Server 2005查询的基本使用。 5.掌握应用SQL Server Management Studio创建数据库的方法。 6.掌握应用SQL ...

    SQL Server 利用触发器对多表视图进行更新的实现方法

    在SQL Server中,触发器是一种特殊的存储过程,它在数据更改操作(如INSERT、UPDATE或DELETE)发生时自动执行。本示例展示了如何利用触发器来实现对多表视图的更新,具体涉及了以下几个关键知识点: 1. **触发器的...

    用vfp与sqlserver构建ClientServer应用程序(远程视图)(1)[整理].pdf

    用 VFP 与 SQL Server 构建 Client/Server 应用程序(远程视图)是指使用 Visual FoxPro(VFP)和 SQL Server 配合构建 Client/Server 应用程序,实现远程数据处理和访问。这种架构可以提供强大的数据处理能力和灵活...

    SQL Server2008创建视图-SQL语句方式.pptx

    本资源主要介绍了在 SQL Server 2008 中使用 SQL 语句创建视图的方法和语法结构。视图是从一个或多个表中导出的虚拟表,通过视图可以简化复杂的查询操作,提高数据访问效率和安全性。 创建视图语法 ------------- ...

    SqlServer2005 打开 SqlServer2008 mdf文件

    Sql Server 2005 打开 Sql Server 2008 mdf 文件数据库转换是指将 Sql Server 2008 中的数据库文件(mdf 文件)转换为 Sql Server 2005 可以识别的格式,以便在 Sql Server 2005 中使用。这种转换过程需要使用 Sql ...

    sqlserver驱动2012版

    5. 支持SQL Server的高级特性,如XML数据类型、分区视图和Service Broker。 在实际应用中,安装SQL Server Native Client 2012驱动后,Navicat用户可以在工具中配置新的数据库连接,选择SQL Server作为服务器类型,...

    SQLserver 中使用SQL语句创建视图:

    在SQL Server中,视图是一种虚拟表,它是由SQL SELECT语句创建的,可以用来封装复杂的查询逻辑,简化数据访问,并提供一定程度的数据安全性。视图并不实际存储数据,而是当查询视图时,根据其定义的SELECT语句动态...

    Sql Server 2014 安装包

    Sql Server 2014 安装包 SQL Server 2014是微软推出的一款关系型数据库管理系统,它在企业级数据管理和分析领域扮演着重要的角色。此安装包包含两个主要组件:SQL Management Studio和SQL Server Express。 1. **...

    sql server客户端连接工具

    尽管SQL Server 2000已过时,学习其客户端工具的使用仍然有价值,因为许多核心概念和T-SQL语法在新版本中仍然适用。 在实际工作中,了解并熟练掌握这些客户端工具能极大地提高数据库管理效率,确保SQL Server实例的...

    SQL Server精华 (CHM)_sqlserver_SQLServer笔记_

    2. SQL查询语言:SQL(Structured Query Language)是SQL Server的核心,涉及SELECT语句的使用,如选择、投影、连接、分组和排序等操作,以及子查询、联接查询和集合操作的深入理解。 3. 视图与索引:视图是虚拟表...

    Microsoft SQL Server 2005 向后兼容组件SQLServer2005_BC.msi

    安装此组件后,用户可以继续使用那些设计时依赖SQL Server 2005特性的应用程序,而无需担心与新版本的不兼容问题。 在SQL Server 2005中,有以下几个核心知识点: 1. **Transact-SQL (T-SQL)**:这是SQL Server的...

    14.sql.server.2005.视图 14.sql.server.2005.视图

    在SQL Server 2005中,可以使用`CREATE VIEW`语句来创建视图。基本语法如下: ```sql CREATE VIEW 视图名 AS SELECT 列1, 列2, ... FROM 表名 WHERE 条件; ``` 这里,`视图名`是你为视图指定的名称,`SELECT`语句...

    SQL SERVER数据库的查询和视图.pdf

    本文详细介绍了SQL Server数据库中查询和视图的相关知识点,包括选择、投影、连接、自然连接以及视图的创建和使用等。掌握这些基础操作是进行高效数据管理和分析的关键。此外,还简要提到了游标的概念,这对于理解...

Global site tag (gtag.js) - Google Analytics