要在安装程序中判断用户机器上安装的是sqlserver2000,还是sqlserver2005,2008这三种数据库之中的哪一种还是哪几种,要求无论安装了几种数据库都要判断出来,然后再进行不同的操作,请问怎么判断?是查注册表判断吗?那sqlserver2000,2005,2008他们对应的注册表键值都是什么,应该怎么查,在安装程序里代码应该怎么写,恳请各位高手帮助。

解决方案 »

  1.   

    select @@VERSIONSELECT
    SERVERPROPERTY('ProductVersion') AS ProductVersion,
    SERVERPROPERTY('ProductLevel') AS ProductLevel,
    SERVERPROPERTY('Edition') AS Edition,
    SERVERPROPERTY('EngineEdition') AS EngineEdition;
    GO
      

  2.   

    那在.net部署安装程序里c#代码怎么写
      

  3.   

    你这个程序对客户机要求好高啊,居然还要装sqlserver.
    我们做的项目从来不敢这样要求啊,至于服务器,那是由开发者决定装什么版本的。
      

  4.   

    那sqlserver2000,sqlserver2005,2008它们各对应的数据库键值都是什么,在安装程序里怎么写代码判断
      

  5.   

     RegistryKey regkey = Registry.LocalMachine.OpenSubKey("SOFTWARE", true).OpenSubKey(@"Microsoft\MSSQLServer\MSSQLServer\CurrentVersion", true); 
                    if (regkey == null) 
                    { 
                        strValue = "注册表的信息不包括SQL内容,请确认是否安装SQL"; 
                    } 
                    else 
                    { 
                        strValue = regkey.GetValue("CurrentVersion").ToString(); 
                    } 
      strValue = regkey.GetValue("CurrentVersion").ToString(); 、、看看这个返回的是什么
      

  6.   

    regkey.GetValue("CurrentVersion")返回的是版本号,根据版本号能知道用户安装的是sqlserver2000,2005还是2008吗