Delen via


xp_sscanf (Transact-SQL)

van toepassing op:SQL Server-

Leest gegevens uit de tekenreeks naar de argumentlocaties die zijn opgegeven door elk notatieargument.

Transact-SQL syntaxisconventies

Syntaxis

xp_sscanf { 'string' OUTPUT , 'format' } [ , 'argument' [ , ...n ] ]

Argumenten

Belangrijk

Argumenten voor uitgebreide opgeslagen procedures moeten worden ingevoerd in de specifieke volgorde, zoals beschreven in de sectie Syntaxis. Als de parameters niet in de volgorde zijn ingevoerd, treedt er een foutbericht op.

'tekenreeks' UITVOER

De tekenreeks waaruit de argumentwaarden moeten worden gelezen.

Wanneer OUTPUTis opgegeven, plaatst tekenreeks de waarde van argument in de uitvoerparameter.

'indeling'

Een opgemaakte tekenreeks, vergelijkbaar met de waarden die worden ondersteund door de C-taal sscanf functie. Op dit moment wordt alleen het argument %s-indeling ondersteund.

'argument'

Een varchar variabele die is ingesteld op de waarde van het bijbehorende -notatie argument.

n

Een tijdelijke aanduiding die aangeeft dat maximaal 50 argumenten kunnen worden opgegeven.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Resultatenset

xp_sscanf retourneert het volgende bericht:

Command(s) completed successfully.

Machtigingen

Vereist lidmaatschap van de openbare rol.

Voorbeelden

In het volgende voorbeeld wordt xp_sscanf gebruikt om twee waarden uit een brontekenreeks te extraheren op basis van hun posities in de indeling van de brontekenreeks.

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;

Dit is de resultatenset.

(No column name) (No column name)
---------------- --------------------
products10.tmp   random