首页免费mssql空间 → mssql空间试用

mssql空间试用


上传时间:2015-05-25 来源:免费mssql空间


第一篇:mssql空间试用

查看MSSQL数据库每个表占用的空间大小 2009-08-25 11:21 FROM:/user1/13950/archives/2007/695454.shtml 查看MSSQL数据库每个表占用的空间大小 我在工作中碰到了一些问题,需要查看数据库表的大小,查询SQL Server联机从书得到如下语句

sp_spaceused显示行数、保留的磁盘空间以及当前数据库中的表所使用的磁盘空间,或显示由整个数据库保留和使用的磁盘空间。

语法sp_spaceused [[@objname =] 'objname'] [,[@updateusage =] 'updateusage'] 参数[@objname =] 'objname' 是为其请求空间使用信息(保留和已分配的空间)的表名。objname 的数据类型是 nvarchar(776),默认设置为 NULL。

[@updateusage =] 'updateusage' 表示应在数据库内(未指定 objname 时)还是在特定的对象上(指定 objname 时)运行DBCC UPDATEUSAGE。值可以是 true 或 false。updateusage 的数据类型是 varchar(5),默认设置为 FALSE。

返回代码值0(成功)或 1(失败) 示例A. 有关表的空间信息下例报告为 titles 表分配(保留)的空间量、数据使用的空间量、索引使用的空间量以及由数据库对象保留的未用空间量。

USE pubs EXEC sp_spaceused 'titles' B. 有关整个数据库的已更新空间信息下例概括当前数据库使用的空间并使用可选参数 @updateusage。

USE pubs sp_spaceused @updateusage = 'TRUE' 不过此方法,只能查看一个表的大小,一个数据库中一般会有多个表,如何一次性查看某数据库的所有表大小呢? 第一种方法(较简单,看的有些吃力)

exec sp_MSforeachtable "exec sp_spaceused '?'" 第二种方法(较复杂,但看的比较清楚,原作者不详): 其实只要使用系统内置的存储过程sp_spaceused就可以得到表的相关信息 如:sp_spaceused 'tablename' 以下是为了方便写的一个存储过程,目的是把当前的所有表的相关信息全部都保存在一个指定的表里面 CREATE PROCEDURE get_tableinfo AS if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tablespaceinfo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) create table tablespaceinfo             --创建结果存储表 (nameinfo varchar(50) , rowsinfo int , reserved varchar(20) , datainfo varchar(20) , index_size varchar(20) , unused varchar(20) ) delete from tablespaceinfo --清空数据表 declare @tablename varchar(255) --表名称 declare @cmdsql varchar(500) DECLARE Info_cursor CURSOR FOR select o.name from dbo.sysobjects o where OBJECTPROPERTY(o.id, N'IsTable') = 1 and o.name not like N'#%%' order by o.name OPEN Info_cursor FETCH NEXT FROM Info_cursor INTO @tablename WHILE @@FETCH_STATUS = 0 BEGIN if exists (select * from dbo.sysobjects where id = object_id(@tablename) and OBJECTPROPERTY(id, N'IsUserTable') = 1) execute sp_executesql N'insert into tablespaceinfo exec sp_spaceused @tbname', N'@tbname varchar(255)', @tbname = @tablename FETCH NEXT FROM Info_cursor INTO @tablename END CLOSE Info_cursor DEALLOCATE Info_cursor GO 执行存储过程 exec get_tableinfo 查询运行该存储过程后得到的结果 select * from tablespaceinfo order by cast(left(ltrim(rtrim(reserved)) , len(ltrim(rtrim(reserved)))-2) as int) desc --itlearner注:显示数据库信息 sp_spaceused @updateusage = 'TRUE' --itlearner注:显示表信息 第三种方法: select object_name(id) tablename,8*reserved/1024reserved,rtrim(8*dpages/1024)+'Mb' used,8*(reserved-dpages)/1024unused,8*dpag作文es/1024-rows/1024*minlen/1024 free, rows,* from sysindexes where indid=1 order by reserved desc 第四种方法:^_^是我自己发现的.   CREATE PROCEDURE get_tableinfo AS if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tablespaceinfo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) create table tablespaceinfo             --创建结果存储表 (nameinfo varchar(50) , rowsinfo int , reserved varchar(20) , datainfo varchar(20) , index_size varchar(20) , unused varchar(20) ) truncate table tablespaceinfo --清空数据表 --这里.....关键部分.把存储过程的结果放到一个表里. insert into tablespaceinfo exec sp_MSforeachtable "exec sp_spaceused '?'" go 查询运行该存储过程后得到的结果 select * from tablespaceinfo   order by cast(left(ltrim(rtrim(reserved)) , len(ltrim(rtrim(reserved)))-2) as int) desc 如果你细心观察也会发现的.我的第四种方法是,总结了第一种和第二种办法来使用的. OTHER: 1 返回每个表大小信息 create table tmp (name varchar(50),rows int,reserved varchar(50), data varchar(50),index_size varchar(50),unused varchar(50)) insert into tmp (name,rows,reserved, data,index_size,unused) exec sp_msforeachTable @Command1="sp_spaceused '?'"--sp_spaceused 't_vehicle' select * from tmp order by data desc drop table tmp 2 获取某个表的所有列信息

第一篇:mssql空间试用

mssql 还原数据库提示磁盘空间不足解决 今天还原数据库,备分文件 5G 左右。但是还原时提示 112 错误,提示磁盘空间不足,我的 C 盘空间明显足够,,所以上网查下,总结如下,并最终解决问题。 首先可能备份日志文件太大,所以硬盘放不下这时候先清空 日志 DUMP 用以下 sql 语句 TRANSACTION 库名 WITH NO_LOG 1、你的 SQL Server 版本,个人版有 2GB 限制。 2、检查磁盘的文件格式,如果是 FAT32,转换为 NTFS 格式。 FAT32 转 NTFS 的方法

不需要格式化,运行:输入命令 convert c:/fs:ntfs 其中,c 为盘符 只要这样就可以把文件系统重 FAT32 转 NTFS 了! 原因是:FAT32 不支持大于 2G 的单个文件。。

当然做着写之前你要确保你的 sql 数据文件在 C 盘如果不在 C 盘那就把对应的盘改为 ntfs 的 或者直接把数据库对应的 mdf 和 ldf 文件移动到 C 盘都可以。

然后在还原, 。

问题解决。

吃饭去。。

第一篇:mssql空间试用

MSSQL网站安装录像大致步骤: 1、清空你的空间 2、上传网站压缩包 3、压缩包在线解压到空间 4、空间数据库备份 5、上传网站数据库备份到空间数据库覆盖替换原有备份 6、空间数据库还原备份 7、用记事本打开conn.asp(不同的网站数据库连接文件不同,要根据个人经验来找;.NET网站的数据库连接文件一般在web.config)等文件设置空间数据库信息并保存 8、上传conn.asp(web.config)等数据库连接文件到网站空间覆盖替换原有的 9、安装完毕后域名访问即可 谢谢观赏! ★亿网高科 有啊店 http://youa.baidu.com/shop/18e05d27342d227ac86ed18b 感谢您收藏我的店铺 ★淘宝网源码[规模最大|品种最全|内容最新|质量最好|价格最优|信誉最高]软件销售商 ★压缩包500GB的千万个商业精品源码陆续上架中,敬请期待! ★迅速查找到本店同类商品的方法:店铺内搜索:关键词或者选择商品所在的相关分类栏目,然后按照价格高低排列。