curunreservedpgs()
通过这两个函数自己计算。
use xxxx ----你的数据库名字
go
--查看数据库内所有对象使用的数据空间:
select count( data_pages(db_id(),id,doampg) + data_pages(db_id(),id,ioampg)) from sysindexes where id <>8
--查看数据库内日志空间:
select count( data_pages(db_id(),id,doampg) + data_pages(db_id(),id,ioampg)) from sysindexes where id
= 8
函数data_pages的第一个参数为数据库id,第二个参数为对象ID,第三个参数为 doampg或者ioampg分别表示统计数据、日志所占空间。
函数curunreservedpgs统计设备上面指定段的剩余空间。
SQL语句如下(直接run):from sysreferences LEFT OUTER join sysobjects a on sysreferences.tableid = a.id LEFT OUTER join sysobjects b on sysreferences.reftabid = b.id
---where b.name in (*,*,...........)
说明:sysreferences系统表中定义了所有表之间的引用关系,其中包括tableid和reftabid,即主表和外键关联表
sysobjects 系统表中定义了所有表的基本信息,两者关联即可。
Sybase ASA中查询元信息的几个常用SQL函数:
sp_column_privileges Unsupported
sp_columns table-name [, table-owner ] [, table-qualifier] [, column-name] 返回指定列的数据类型
sp_databases Unsupported
sp_datatype_info Unsupported
sp_fkeys pktable_name [, pktable-owner][, pktable-qualifier] [, fktable-name] [, fktable_owner] [, fktable-qualifier] 表的外键信息
sp_pkeys table-name [, table_owner] [, table_qualifier] 表的主键信息
sp_server_info Unsupported
sp_special_columns table_name [, table-owner] [, table-qualifier] [, col-type] 表的标识行的特定列的信息
sp_sproc_columns proc-name [, proc_owner] [, proc-qualifier] [, column-name] 存储过程的输入输出参数信息
sp_stored_procedures [sp-name] [, sp-owner] [, sp-qualifier] 一个或者多个存储过程信息
sp_statistics [table_name] [, table_owner] [, table_qualities] [, index_name] [, is_unique] 表及其索引列的信息
sp_tables table-name [, table-owner] [, table-qualifier] [, table-type] 指定表的信息
我只会土办法,肯定管用用一个中间表转一下, *** 作办法如下
根据出数据要求建一个中间表
用cursor 查询出所有数据
根据规则,逐条将数据转到新表中
完成后查询出新表的数据,完成处理
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)