как получить модель системы (название продукта, например: Proliant DL580 Gen9) с помощью SQL Query? - PullRequest
0 голосов
/ 09 декабря 2018

Я ищу способ найти модель системы, такую ​​как «Proliant DL580 Gen9», но я не могу найти способ получить это.

Модель системы

Я пытаюсь выполнить запрос ниже и использовать процедуру "master.sys.xp_regread", чтобы получить имя модели сервера

DECLARE @ServerType VARCHAR(max)
EXEC master.sys.xp_regread @rootkey = 'HKEY_LOCAL_MACHINE',
                           @key = 'HARDWARE\DESCRIPTION\System\BIOS\0',
                           @value_name = 'SystemProductName',
                           @value = @ServerType OUTPUT;
SELECT @ServerType 

, которое возвращает значение NULL!

Есть лиспособ получить модель системы типа "Proliant DL580 Gen9"?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Спасибо, что ответили на мой вопрос. Также я нашел другой способ получить эту собственность.

DECLARE @SysInfo TABLE (Property NVARCHAR(MAX));
INSERT INTO @SysInfo (Property) 
    EXEC master.dbo.xp_cmdshell 'systeminfo | findstr /C:"System Model"';
SELECT  (SELECT LTRIM(REPLACE(Property, 'System Model:', ''))       
    FROM @SysInfo WHERE Property LIKE '%System Model%');

С наилучшими пожеланиями

0 голосов
/ 09 декабря 2018

Добрый день,

Вы можете получить модель, используя запрос ниже:

EXEC master.sys.xp_regread 
    @rootkey = 'HKEY_LOCAL_MACHINE',
    @key = 'HARDWARE\DESCRIPTION\System\BIOS',
    @value_name = 'SystemProductName'
GO

Результат должен дать вам эквивалентную информацию, которую вы получите, выполнив команду wmic

wmic computersystem get model

Для всего, в чем вы не уверены, вы можете просто открыть реестр с помощью команды regedit, найти искомое значение и изменить параметры в запросе выше

Например,Вот некоторые общие ценности, которые нужны людям:

EXEC master.sys.xp_regread 
    @rootkey = 'HKEY_LOCAL_MACHINE',
    @key = 'HARDWARE\DESCRIPTION\System\BIOS',
    @value_name = 'SystemManufacturer'
GO
EXEC master.sys.xp_regread 
    @rootkey = 'HKEY_LOCAL_MACHINE',
    @key = 'HARDWARE\DESCRIPTION\System\BIOS',
    @value_name = 'SystemVersion'
GO
EXEC master.sys.xp_regread 
    @rootkey = 'HKEY_LOCAL_MACHINE',
    @key = 'HARDWARE\DESCRIPTION\System\BIOS',
    @value_name = 'SystemProductName'
GO

EXEC master.sys.xp_regread 
    @rootkey = 'HKEY_LOCAL_MACHINE',
    @key = 'HARDWARE\DESCRIPTION\System',
    @value_name = 'SystemBiosVersion'
GO
...