探讨:如何查看和获取SQL Server实例名

前端之家收集整理的这篇文章主要介绍了探讨:如何查看和获取SQL Server实例名前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、服务—sql Server(实例名),默认实例为(MSsqlSERVER)

或在连接企业管理时-查看本地实例

2、通過注冊表

sql Server/InstalledInstance

3、用命令

sqlcmd/osql
sqlcmd -L
sqlcmd -Lc
osql -L

获取可用實例,以下舉一個例子,根據自己情況改

代码如下:
DECLARE @Table TABLE ( instanceName sysname NULL)

insert @Table EXEC sys.xp_cmdshell 'sqlcmd -Lc'

--LEFT(@@serverName,CHARINDEX('/',@@serverName+'/')-1) 替代為本機名就行了,根據實例命名規則判斷

SELECT * FROM @Table WHERE instanceName LIKE LEFT( @@serverName,CHARINDEX ( '/',@@serverName + '/' )- 1)+ '%'


--1.

--2

--3

--4

--5

EXECUTE xp_regread @rootkey='HKEY_LOCAL_MACHINE',
@key='SOFTWARE/Microsoft/Microsoft sql Server/Instance Names/sql',
@value_name='MSsqlSERVER'

Select Case
When SERVERPROPERTY ('InstanceName') Is Null Then @@SERVERNAME
Else SERVERPROPERTY ('InstanceName')
End

1、You can do with registry reading,like my code

代码如下:
using System;
using Microsoft.Win32;

namespace SMOTest
{
class Program
{
static void Main()
{
RegistryKey rk = Registry.LocalMachine.OpenSubKey(@"SOFTWARE/Microsoft/Microsoft sql Server");
String[] instances = (String[])rk.GetValue("InstalledInstances");
if (instances.Length > 0)
{
foreach (String element in instances)
{
if (element == "MSsqlSERVER")
Console.WriteLine(System.Environment.MachineName);
else
Console.WriteLine(System.Environment.MachineName + @"/" + element);
}
}
}
}
}


2、You can use sqlDMO.dll to retrieve the list of sql Server instances. The sqlDMO.dll can be found from the "C:/Program Files/Microsoft sql Server/80/Tools/Bin" folder. Refer this assembly in your project and the following snippet would return a List Object containing the sql server instances.
代码如下:
public static List GetsqlServerInstances()
{
NameList sqlNameList = null;
Application app = null;


var sqlServers = new List();
try
{
app = new ApplicationClass();
sqlNameList = app.ListAvailablesqlServers();
foreach (string sqlServer in sqlNameList)
sqlServers.Add(sqlServer);
}
catch(Exception ex)
{
//play with the exception.
}
finally
{
if (sqlNameList != null)
sqlNameList = null;
if (app != null)
app = null;
}
return sqlServers;
}

猜你在找的MsSQL相关文章