Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if object_id('dbo.GetCurrentOrDefault') is not null drop function GetCurrentOrDefault
- go
- create function GetCurrentOrDefault(@valueOrDefault nvarchar(17)) returns nvarchar(17)
- begin
- declare @current_value as nvarchar(17);
- declare @default_value as nvarchar(17);
- declare @value_separator_index as int
- select @value_separator_index = charindex('|', @valueOrDefault)
- if @value_separator_index = 0 return null
- select @current_value = substring(@valueOrDefault, 0, @value_separator_index)
- select @default_value = substring(@valueOrDefault, @value_separator_index + 1, len(@valueOrDefault) - @value_separator_index + 1)
- return iif(@valueOrDefault like '{%}|%', @default_value, @current_value)
- end
- go
- declare @env as nvarchar(51) = N'{Environment}|production'
- declare @ver as nvarchar(59) = N'{Version}|3.9.0'
- select @env = dbo.GetCurrentOrDefault(@env)
- select @ver = dbo.GetCurrentOrDefault(@ver)
- if @env is null raiserror ('Invalid environment: ' + @env, 16, 1)
- if @ver is null raiserror ('Invalid version: ' + @ver, 16, 1)
- .GetSql().Format(new { Environment = "test", Version = "4.0.0" })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement