1

很多人都询问并回答了如何使用@@VERSION 或 SERVERPROPERTY('productversion') 之类的东西来确定 sql server 的版本,但这些都不适用于 sql server compact edition 4。

是否有一些普遍支持的方法可以通过 sql 查询或 ado.net 代码确定正在使用的 sql server 版本和版本,这些代码适用于紧凑版一直到完整的 sql server?

我想确定正在使用的 SQL Server 的确切版本/版本,因此我知道要从我的代码中发出哪种类型的分页查询。Sql CE 4 使用与 sql server 2011 (denali) 相同的新格式进行分页查询,并且 2005 和 2008 有自己的方法,在 CE 4 中不受支持。

我认为答案是不可能的,但我只是想确保我没有忽略某些事情。

4

4 回答 4

0

看看这篇博文。它有一个下载实用程序的链接,该实用程序可检测您正在运行的 SQL Compact 版本。它还有一个指向您可能感兴趣的实用程序源代码的链接。

于 2011-04-13T16:36:50.377 回答
0

我不再使用 SQL Server,但这是我对这个小问题的尝试。

对于精简版的第 4 版,以下内容应为您提供版本和构建。

var ver = new System.Data.SqlServerCe.SqlCeConnection().ServerVersion;

以下应该为您提供程序集版本

var version = typeof(System.Data.SqlServerCe.SqlCeConnection).Assembly.GetName().Version;
于 2011-04-15T06:09:40.767 回答
0

您可以使用 PowerShell,在 Windows 7 或更高版本中,它默认预安装。使用以下命令行:

[System.Reflection.Assembly]::LoadFrom("SQLCeAssembly.dll").GetName().Version

输出这个:

Major  Minor  Build  Revision
-----  -----  -----  --------
4      0      0      0
于 2016-09-22T13:12:47.080 回答
-2

运行这个

SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')  

在此处查看详细信息

于 2011-04-15T05:27:53.130 回答