易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL Server 2005中的文件和文件组

--> Title  : SQL Server 2005中的文件和文件组
--> Author : wufeng4552
--> Date   : 2009-10-23
1、文件和文件组的含义与关系
    每个数据库有一个主数据文件.和若干个从文件。文件是数据库的物理体现。 文件组可以包括分布在多个逻辑分区的文件,实现负载平衡。文件组允许对文件进行分组,以便于管理和数据的分配/放置。例如,可以分别在三个硬盘驱动器上创建三个文件(Data1.ndf、Data2.ndf   和   Data3.ndf),并将这三个文件指派到文件组   fgroup1   中。然后,可以明确地在文件组   fgroup1   上创建一个表。对表中数据的查询将分散到三个磁盘上,因而性能得以提高。在   RAID(磁盘冗余阵列)条带集上创建单个文件也可以获得相同的性能改善。然而,文件和文件组使您得以在新磁盘上轻易地添加新文件。另外,如果数据库超过单个   Microsoft   Windows 文件的最大大小,则可以使用次要数据文件允许数据库继续增长。
2、文件、文件组在实践应用中常见的问题
通常情况下我们构造的数据库都只有两个文件,mdf文件和ldf文件.但是这样有两个缺点:
(一)容易导致文件过大
   我们知道,mdf文件是数据库文件,这样的话也就意味着随着数据库的增大mdf就会相应的增大,显然在现在的应用中数据膨胀是太常见的事情了,当你的应用变大后,mdf文件也会变大,然而windows对文件的大小是有要求的,这样的话很容易导致mdf文件达到windows所允许的文件大小的界限(于是数据库就崩溃了)。
(二)没有利用到磁盘阵列
   大型的服务器好多都有磁盘阵列,你可以把磁盘阵列简单的假象成n个一块转动的磁盘,磁盘阵列的设计是希望通过多个磁盘的串联来得到更大的读写效率.但是如果你的数据库只有一个mdf文件(ldf文件暂时不考虑),那么你总是只能够利用这个磁盘阵列里面的一个磁盘而已.那样的话昂贵的磁盘阵列的效率就由并联变成串联了.试想如果我们能够让mdf分散成多个文件,比如说磁盘阵列上的每个磁盘中都分配一个文件,然后把mdf中的数据分散到各个文件中,我在读取的时候就是串联的读取了,这样就充分的利用了磁盘阵的存取效能.
这两个问题平常我们没有遇到过(条件不具备),但是做大型的服务开发的时候这几乎是致命的.
3、查询文件组和文件语句
这在2005下,运行
SELECT df.[name],
   &n


相关文档:

SQL Server中各数据类型尺寸(Byte)


数据类型
存储尺寸
描述
bigint
8 bytes
 
integer
4 bytes
 
smallint
2 bytes
 
tinyint
1 byte
 
bit
1 byte
 
numeric(p,s)
decimal(p,s)
dec(p,s)
19 bytes
 
money
8 bytes
 
float
8 bytes
 
real
4 bytes
 
datetime
8 bytes
 
nvarchar(n)
2*长度 bytes
 
nte ......

Sql Server2005对t sql的增强之Cross Apply

Cross Apply使表可以和表值函数结果进行join,在下面的示例中建了两个表和一个表值函数,T_b的列a_ids中会存放a表的id用,分割的字符串连接;我们通过cross apply使T_a,T_b表通过splitIDs inner join 连接。请看示例:GO
if object_id('T_a','U') is not null
drop table T_a
GO
CREATE TABLE T_a(    ......

Oracle维护常用SQL语句汇总

如何远程判断Oracle数据库的安装平台
select * from v$version;
查看表空间的使用情况
select sum(bytes)/(1024*1024) as free_space,tablespace_name
from dba_free_space
group by tablespace_name;
SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,
(B.BYTES*100)/A.BYTES "% USED",(C.BYTES ......

SQL 2005数据类型说明

自动编号:设字段类型为:int ,然后列属性中 (是标识)选是,标识种子选1。
用varchar(max)代替text。varchar的最大长度为8000,但是varchar(max)则可以存储多达2G的数据,因此其作用相当于SQL 2000中的text。但是微软可能会后续的SQL Server版本中移除text类型,从现在就应该用varchar(max) 来代替text。
用nvarchar(m ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号