2 przydatne funkcje wycinające z pełnej ścieżki do pliku samą ścieżkę oraz nazwę pliku.
Przykładowa ścieżka "C:\Program Files\Cisco\Cisco AnyConnect Secure Mobility Client\vpnui.exe"
1 z funkcji wycina ścieżkę:
CREATE FUNCTION [dbo].[LTrimChar] ( @input nvarchar(MAX) ) RETURNS nvarchar(MAX) AS BEGIN set @input = replace((SUBSTRING((@input),0,(len(@input)+1) - CHARINDEX('\',reverse(@input)))),'"',''); RETURN @input; END
Druga samą nazwę pliku:
CREATE FUNCTION [dbo].[RTrimChar] ( @input nvarchar(MAX) ) RETURNS nvarchar(MAX) AS BEGIN set @input = ltrim(rtrim(replace(REVERSE(SUBSTRING(reverse(@input),0,charindex('\',reverse(@input)))),'"',''))); RETURN @input; END
Wynik działania w zapytaniu
select Sciezka, RTrimChar(Sciezka) as 'Plik', LTrimChar(Sciezka) as 'Path' from FilePath
Zwracam nam jako path C:\Program Files\Cisco\Cisco AnyConnect Secure Mobility Client
i jako plik vpnui.exe kasując również znaki cudzysłowia