从 6.5 到 >= SQL Server 2008 的 SQL 查询转换
Posted
技术标签:
【中文标题】从 6.5 到 >= SQL Server 2008 的 SQL 查询转换【英文标题】:SQL Query conversion from 6.5 to >= SQL Server 2008 【发布时间】:2017-11-14 13:51:25 【问题描述】:目前我正在做迁移项目。在一个过程中找到了以下查询。我能够从 sys.master_files 表中获取数据库的大小。在 WHERE 条件下使用 segmap。我无法在 sys.master_files 中找到类似的列。请帮我解决这个问题
SELECT sum(size) * 2
FROM master..sysusages U
WHERE U.segmap = 3
AND U.dbid = db_id(@db_name)
【问题讨论】:
我希望您升级到比 2008 年更新的版本。否则您将从一个不受支持的版本升级到另一个版本。 >. 【参考方案1】:SYBASE 和 SQLSERVER 曾经共享相同的代码库。因此来自 SYBASE 文档..below is definition of segmap
master..sysusages.segmap 的值含义如下:
3:存储在此段上的数据 4:此段上存储的日志 7:由于7=4+3,日志和数据都存储在这个段上
所以等价的应该是 type='0' 这意味着只获取数据空间
【讨论】:
以上是关于从 6.5 到 >= SQL Server 2008 的 SQL 查询转换的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server 6.5 jdbc (jdts) 不兼容
vCenter Server6.5 & SQL Server2014单机部署 - vShpere ESXI6.0-6.5集群管理