Поделиться через


xp_sscanf (Transact-SQL)

Считывает данные из строки в расположения аргументов, заданные каждым аргументом форматирования.

Значок ссылки на разделСоглашения о синтаксисе в 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