Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Returnerar den lokala delen av namnet på $arg som en xs:string som antingen är strängen med noll längd eller har den lexikala formen av en xs:NCName. Om argumentet inte anges är standardinställningen kontextnoden.
Syntax
fn:local-name() as xs:string
fn:local-name($arg as node()?) as xs:string
Arguments
$arg
Nodnamn vars lokala namndel hämtas.
Anmärkningar
I SQL Server
fn:local-name()kan utan argument endast användas i kontexten för ett kontextberoende predikat. Mer specifikt kan den bara användas inom hakparenteser ([ ]).Om argumentet anges och är den tomma sekvensen returnerar funktionen strängen med noll längd.
Om målnoden inte har något namn, eftersom det är en dokumentnod, en kommentar eller en textnod, returnerar funktionen strängen med noll längd.
Examples
Den här artikeln innehåller XQuery-exempel mot XML-instanser som lagras i olika xml-typkolumner i AdventureWorks-databasen.
A. Hämta det lokala namnet på en specifik nod
Följande fråga anges mot en otypad XML-instans. Frågeuttrycket , local-name(/ROOT[1]), hämtar den lokala namndelen av den angivna noden.
DECLARE @x AS XML;
SET @x = '<ROOT><a>111</a></ROOT>';
SELECT @x.query('local-name(/ROOT[1])');
-- result = ROOT
Följande fråga anges mot kolumnen Instruktioner, en typinskriven XML-kolumn, i tabellen ProductModel. Uttrycket , local-name(/AWMI:root[1]/AWMI:Location[1]), returnerar det lokala namnet, Location, för den angivna noden.
SELECT Instructions.query('
declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions" ;
local-name(/AWMI:root[1]/AWMI:Location[1])') AS Result
FROM Production.ProductModel
WHERE ProductModelID = 7;
-- result = Location
B. Använd lokalt namn utan argument i ett predikat
Följande fråga anges mot kolumnen Instruktioner, skrivet xml-kolumn , i tabellen ProductModel. Uttrycket returnerar alla element underordnade elementet <root> vars lokala namndel i QName är ."Location" Funktionen local-name() anges i predikatet och har inga argument Kontextnoden används av funktionen.
SELECT Instructions.query('
declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions" ;
/AWMI:root//*[local-name() = "Location"]') AS Result
FROM Production.ProductModel
WHERE ProductModelID = 7;
Frågan returnerar alla <Location> element underordnade element i elementet <root> .