2389 – %1!’%2!’ richiede un singleton o una sequenza vuota. Trovato operando di tipo ‘%3!’.

0
(0)

Messaggio

Codice: 2389

Messaggio in italiano: %1!’%2!’ richiede un singleton o una sequenza vuota. Trovato operando di tipo ‘%3!’.

Messaggio in inglese: %s’%ls’ requires a singleton (or empty sequence), found operand of type ‘%ls’

Spiegazione

In una query in cui si interroga un campo XML tramite campo.value non è possibile accedere al valore di un attributo tramite una classica espressione XPath del tipo /nodo/@attributo, perché è considerato alla stregua di un elemento multiplo e non scalare.

Causa

Si è tentato di accedere al valore di un attributo XML tramite una query XPath del tipo /nodo/@attributo usando campo.value.

Esempio:

SELECT Id, Nome.Value('/Nomi/Nome/@Valore', 'varchar') FROM Tabella

Parametri

%1! rappresenta il messaggio XQuery dell’evento che ha generato l’errore.

%2! rappresenta la funzione che ha generato l’errore

%3! rappresenta il tipo che non è considerato come valore scalare

Soluzione

Scrivere l’espressione XPath tra parentesi e applicare l’indice [1]:

Esempio non funzionante:

SELECT Id, Nome.Value('/Nomi/Nome/@Valore', 'varchar') FROM Tabella

Esempio funzionante:

SELECT Id, Nome.Value('(/Nomi/Nome/@Valore)[1]', 'varchar') FROM Tabella

Hai trovato utile questo contenuto?

Valutazione: 0 / 5. Voti: 0

Vota per primo questo contenuto

Ci dispiace che tu abbia trovato inutile o sbagliato questo contenuto

Lasciaci un messaggio

Come possiamo migliorare?

2 commenti su “2389 – %1!’%2!’ richiede un singleton o una sequenza vuota. Trovato operando di tipo ‘%3!’.”

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Moderazione dei commenti attiva. Il tuo commento non apparirà immediatamente.