xp_sscanf (Transact-SQL)
Считывает данные из строки в расположения аргументов, заданные каждым аргументом форматирования.
Синтаксис
xp_sscanf { string OUTPUT , format } [ ,argument [ ,...n ] ]
Аргументы
string
Символьная строка, из которой считываются значения аргументов.OUTPUT
Если параметр указан, то значение argument помещается в выходной параметр.format
Отформатированная символьная строка, подобная строке, поддерживаемой в языке C функцией sscanf. В настоящее время поддерживается только аргумент форматирования %s.argument
Переменная varchar, в качестве значения которой задан соответствующий аргумент format.n
Заполнитель, показывающий, что можно указать максимум 50 аргументов.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение).
Результирующие наборы
Процедура xp_sscanf возвращает следующее сообщение:
Command(s) completed successfully.
Разрешения
Необходимо членство в общей роли.
Примеры
В приведенном ниже примере с помощью xp_sscanf из исходной строки извлекаются два значения на основании их положений в формате этой строки.
DECLARE @filename varchar (20), @message varchar (20)
EXEC xp_sscanf 'sync -b -fproducts10.tmp -rrandom', 'sync -b -f%s -r%s',
@filename OUTPUT, @message OUTPUT
SELECT @filename, @message
Ниже приводится результирующий набор.
-------------------- --------------------
products10.tmp random