To read Environment variables in T-SQL, you can use the xp_cmdshell
extended stored procedure in SQL Server.
The following example shows how to read the %windir%
environment variable, which gives the Windows directory path on SQL Server using xp_cmdshell
:
DECLARE @windir nvarchar(255)CREATE TABLE #Tmp(EnvVar nvarchar(255))INSERT INTO #Tmp exec xp_cmdshell 'echo %windir%'SET @windir = (SELECT TOP 1 EnvVar from #Tmp)SELECT @windir as 'Windows Directory'
NOTE:To run this command, you need to be a member of the sysadmin fixed server. If you want others to be able to execute this command, you will have to explicitly grant them permission to execute the xp_cmdshell
stored procedure.
Find more information about this stored procedure at MSDN.