ITPUB??ì3
ITPUB论坛 » Sybase管理与开发 » Sybase高手请进!!!

标题: Sybase高手请进!!!
离线 ykjhio
初级会员



精华贴数 0
个人空间 0
技术积分 60 (23725)
社区积分 0 (117645)
注册日期 2004-6-15
论坛徽章:0
      
      

发表于 2008-6-24 11:26 
Sybase高手请进!!!

现在开发一个监控系统,sybase15.0,我知道察看表的大小只能用sp_spaceused tablename,并且在命令行中运行,现在我的程序要通过sql语句取出所有的表的大小,我不知道如何写,请高手指点。


只看该作者    顶部
离线 花好月不圆
初级会员



精华贴数 5
个人空间 20
技术积分 9758 (121)
社区积分 2418 (490)
注册日期 2003-8-11
论坛徽章:40
现任管理团队成员ITPUB元老管理团队2006纪念徽章会员2006贡献徽章授权会员2008北京奥运纪念徽章:自行车
2008北京奥运纪念徽章:柔道2008北京奥运纪念徽章:摔跤2008北京奥运纪念徽章:跆拳道2008北京奥运纪念徽章:帆船2008北京奥运纪念徽章:手球2008北京奥运纪念徽章:马术

发表于 2008-6-24 23:03 
分析下 sp_spaceused 的代码就知道了


只看该作者    顶部
离线 ykjhio
初级会员



精华贴数 0
个人空间 0
技术积分 60 (23725)
社区积分 0 (117645)
注册日期 2004-6-15
论坛徽章:0
      
      

发表于 2008-6-25 11:20 
楼上我看了一下那个存储过程的代码,好像实现不了我的需求,你有啥好的办法吗?帮帮我,我是个新手。


只看该作者    顶部
离线 ykjhio
初级会员



精华贴数 0
个人空间 0
技术积分 60 (23725)
社区积分 0 (117645)
注册日期 2004-6-15
论坛徽章:0
      
      

发表于 2008-6-25 11:32 
另外,我google了一下,有人说在sybase IQ中能用sp_iqtablesize 表名就能够得到表的大小,我是sybase新手,sybase IQ是
啥东东,我只装了sybase ase


只看该作者    顶部
离线 jarjar
新人,请多关照



精华贴数 1
个人空间 0
技术积分 4325 (309)
社区积分 166 (2541)
注册日期 2005-6-1
论坛徽章:20
现任管理团队成员2008北京奥运纪念徽章:现代五项生肖徽章:蛇生肖徽章:牛  
      

发表于 2008-6-26 13:37 
IQ是Sybase的用于数据仓库的产品。
ASE是传统的用于OLTP的数据库产品。

sp_spaceused既然能看单表的,从sysobjects中做一个循环,不就能看所有表的?

select name from sysobjects where type = "U"


__________________
if you want something done right, hire a professional
只看该作者    顶部
离线 花好月不圆
初级会员



精华贴数 5
个人空间 20
技术积分 9758 (121)
社区积分 2418 (490)
注册日期 2003-8-11
论坛徽章:40
现任管理团队成员ITPUB元老管理团队2006纪念徽章会员2006贡献徽章授权会员2008北京奥运纪念徽章:自行车
2008北京奥运纪念徽章:柔道2008北京奥运纪念徽章:摔跤2008北京奥运纪念徽章:跆拳道2008北京奥运纪念徽章:帆船2008北京奥运纪念徽章:手球2008北京奥运纪念徽章:马术

发表于 2008-6-26 14:19 
SELECT USER_NAME(O.uid),
       O.name,
       I.name,
       I.indid,
       STR(ROUND((RESERVED_PGS(I.id,doampg)+RESERVED_PGS(I.id,ioampg))*(2048/1024576.0),2),9,2)as Reserved,
       STR(ROUND(CONVERT(numeric(20,9),DATA_PGS(I.id,doampg))*(2048/1024576.0),2),9,2)as Data,
       STR(ROUND(CONVERT(numeric(20,9),DATA_PGS(I.id,ioampg))*(2048/1024576.0),2),9,2) as Index_1 ,
       STR(ROUND(CONVERT(numeric(20,9),((RESERVED_PGS(I.id,doampg)+RESERVED_PGS(I.id,ioampg))-(DATA_PGS(I.id,doampg)+DATA_PGS(I.id,ioampg))))*(2048/1024576.0),2),9,2) as Unused ,
       I.status,I.status2
  FROM syssegments S,sysindexes I,sysobjects O
  WHERE S.name='default' AND I.id!=8 AND
        I.segment=S.segment AND
        I.id=O.id
  ORDER BY I.indid


只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问