Como puedo leer una variable de un fichero XML para utilizarlo en una consulta de T-SQL

Buenos días: Tengo que insertar en una BD de SQL
Server 2008 R2 un registro de una BD de Access adjuntada como servidor
vinculado en el motor de SQL Server 2008 R2. El caso es que la condición que
deben cumplir los registros de la tabla de Access es un valor de un campo que
debo obtener de un fichero XML con la estructura siguiente:


?xml version="1.0"
encoding="ISO-8859-1" ?>
<ventaarticuloinexistente>
<bd>
<server>SERVIDOR01\sqlexpress</server>
<database>FRUTERIA3</database>
<user>ICGAdmin</user>
</bd>
<doc>
<tipodoc>ALBVENTA</tipodoc>
<serie>****</serie>
<numero>1</numero>
<n>B</n>
<articuloinexistente>666</articuloinexistente>
</doc>
</ventaarticuloinexistente>


El tema es que este fichero SOLO tendrá un dato cada vez
que es, en este ejemplo el de 666 del nodo <articuloinexistente> por lo
que nuestra idea sería declarar la variable @calle:
DECLARE @calle VARCHAR(02) -- nº calle
set @calle=SELECT articuloinexistente C:\OkiDriver\GS.XML ??????????

Para luego ejecutar el INSERT en estos términos
filtrando por la variable antes definida @calle


BEGIN
INSERT INTO
[FRUTERIA3].[dbo].[ALBVENTALIN]
([NUMSERIE]
,[NUMALBARAN]
,[N]
,[NUMLIN]
,[CODARTICULO]
,[REFERENCIA]
,[COLOR]
,[TALLA]
,[UNID1]
,[UNIDADESTOTAL]
,[UNIDADESPAGADAS]
,[FECHAENTREGA]
,[HORA]
,[FECHACADUCIDAD])
SELECT
'****'
,1
,'B'
,1
,CÓDIGO
,CARBURANTE
,'.'
,'.'
,LITROS
,LITROS
,LITROS
,CAST(2012-10-18 AS DATETIME)
,CAST(2012-10-18 AS DATETIME)
,CAST(2012-10-18 AS DATETIME)

FROM
[ACCESS]...[CALLETEMP]

WHERE MARCA=0 and CALLE=@calle

END


PREGUNTA: Cómo puedo leer ese dato del fichero XML
para insertarlo en la variable @calle?

Espero haber sido claro en mi exposición pues no tengo
mucha experiencia con los foros.

De todas maneras, gracias de antemano.

Donon.

Añade tu respuesta

Haz clic para o