This is purely a cosmetic annoyance. If you’re looking at your 8.1 / 2012 R2 machines in your WSUS console and they’re showing up as the Windows version number (6.x) instead of the branded name, there is a quick fix for this. It does involve a little command line work, and as always, you should take a snapshot/backup of your environment before attempting.
If you’ve installed WSUS using the Server Role option, it’ll most likely be installed using the Windows Internal Database (WID) rather than a full blown SQL instance. WID uses the sqlcmd.exe command for any manual database alterations.
Default location is: <Local SQL installation path>\<SQL instance>\Tools\Binn\
You will then need to write a small script to alter the version number to match the branded version of Windows.
(For Windows 8.1)
UPDATE [SUSDB].[dbo].[tbComputerTargetDetail] SET [OSDescription] = 'Windows 8.1' WHERE [OSMajorVersion] = '6' AND [OSMinorVersion] = '3' AND [OldProductType] = '1' AND ([OSDescription] <> 'Windows 8.1' or [OSDescription] IS NULL)
(For Windows 2012 R2)
UPDATE [SUSDB].[dbo].[tbComputerTargetDetail] SET [OSDescription] = 'Windows Server 2012 R2' WHERE [OSMajorVersion] = '6' AND [OSMinorVersion] = '3' AND [OldProductType] <> '1' AND ([OSDescription] <> 'Windows Server 2012 R2' or [OSDescription] IS NULL)
Save these as separately named .sql files. You’ll now need to execute the queries.
Using the above default location, in a command prompt as an administrator:
<Local SQL installation path>\<SQL instance>\Tools\Binn\sqlcmd -S \\.\pipe\MICROSOFT##WID\tsql\query -i c:\temp\verrename1.sql
where c:\temp is where I have placed the .sql files.
You should see rows affected, that match the number of 8.1 / R2 machines you have.
WSUS should now report the machines as Windows branded machines, rather than their OS version.
Note: This will update the existing items. Any new machines that appear after this has been done will need to have the query re-run for them to appear as 8.1 / 2012R2