Sql Server2005数据库怎么查看视图里的字段。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql Server2005数据库怎么查看视图里的字段。相关的知识,希望对你有一定的参考价值。
参考技术A 数据库中的索引主要是为了方便快速查询数据,在有索引的表中查询数据比没有索引的表中查询数据要快。但索引也有其不好的地方,在数据量不大的表中一般不要用索引,索引本身也是要消耗资源的。理论上索引可以在任何字段上设置。实际过程中一般只是在经常要查询的字段上设置。 参考技术B 1.在SQLSERVER管理器中选中视图点击右键选择设计,在设计画面中可以看到栏位及来源表,逻辑等
2.在SQLSERVER
管理器中选中视图点击加号(+)展开,在栏位下可以看到
3.使用SQL语句,select
*
from
视图名,在结果中也可以看到栏位 参考技术C select
*
from
视图名,查看全部字段或者select
字段名
from
视图名,查看部分字段 参考技术D 1.在
SQLSERVER
管理器中选中视图点击右键选择设计,在设计画面中可以看到栏位及来源表,逻辑等
2.在SQLSERVER
管理器中选中视图点击加号(+)展开,在栏位下可以看到
3.使用
SQL语句
,select
*
from
视图名,在结果中也可以看到栏位
楼上的
这3中方法都是比较直接
也比较正确
真正用sql
查询
视图字段
select
name
from
syscolumns
where
id=object_id('视图名')
这样直接数据
就是视图的各个字段
表与视图 SQL Server 的性能
【中文标题】表与视图 SQL Server 的性能【英文标题】:Performance of table vs view SQL Server 【发布时间】:2017-08-30 16:12:37 【问题描述】:我在一个数据仓库中工作,该数据仓库有一个非常大的事务数据表(数亿行)。用户想要分割数据有一些常见的方式(只查看特定的交易类型,只查看特定的供应商,一次只查看一个月等),我正试图从一个性能观点。
数据是静态的,每月加载一次。所以,我不必处理不断变化的数据。
我应该创建只包含所需记录的视图吗?或者,我应该为每个用例创建一个表并加载数据吗?
基本上,我认为我的问题是:如果我有一个大的静态表,我是否应该编写一个只过滤我想要的记录的视图,然后针对该视图进行查询?或者,我应该创建一个表,只从主表中加载我想要的记录,然后查询该表吗?
我看到很多关于“视图与查询”的讨论,但我真正要问的是“针对视图的查询与针对表的查询”。
【问题讨论】:
很难说没有一些细节。您可以索引视图,因此这对于创建获取所需数据所需的特定视图可能很有用。您可以将数据加载到测试环境中吗?所有的答案都将在执行计划中。 视图仍将查询表,因此这里不会有太大差异(如果有的话)。但如果视图被索引,它可能会有所帮助。遗憾的是,这个问题太宽泛了。 您的数据仓库架构是否使用 Inmon 或 Kimball 方法?这是在 SQL Server 中还是在 SSAS 中? @Simon - 没有视图没有存储在任何地方。这只是一个保存的查询。当您从该视图中提取数据时,它会针对基础表运行查询。除非我们在谈论索引或物化视图。这些是完全不同的动物,对于像你描述的那样是一个很好的选择。 让我说得更具体一些。事务表有 2 亿行。有 10 种交易类型。许多用户只关心 2,这使行数减少到 5000 万。我应该在 ('a','b') 子句中创建一个具有 WHERE Transactiontype 的视图吗?或者,我应该创建第二个表,具有相同的列,但只加载这两种类型的行?用户将运行查询来过滤和聚合表中的其他列:过滤某些日期或供应商类型。这是 SQLServer 2016,不使用 SSAS。不涉及其他表。它完全是平的,一张巨大的桌子。 【参考方案1】:当我遇到 ASYNC_NETWORK_IO 等待类型时,我也不得不通过 SSIS 包将 86+ 百万行从事务表传输到我的数据仓库,所以最终我修改了 SSIS 中的查询,以批量从事务表中获取记录,并且插入我的数据仓库。 您也可以尝试使用过滤条件查看视图,但无论如何它都会从基表中查找,所以我会批量获取记录。
【讨论】:
以上是关于Sql Server2005数据库怎么查看视图里的字段。的主要内容,如果未能解决你的问题,请参考以下文章
sql server 2005代码错误 提示插入错误: 列名或所提供值的数目与表定义不匹配。
急急急!应用程序在sql server2005里执行的sql语句怎样查看!