Estoy trabajando en un programa de administración y, al escribir una de sus funciones, encontré este error.

Aquí está el código.

Código:

create procedure wIaTertiDemo 
    @sesiune varchar(50), 
    parXML xml
as
begin try
    declare @utilizator varchar(500)
    exec wIaUtilizator @sesiune @utilizator output

    select codfiscal, denumire as @dentert, adresa 
    from tertiDemo
    for xml raw

    --create table tertiDemo(codfiscal varchar(50), denumire varchar(500), adresa varchar(500)

end try
BEGIN CATCH
    DECLARE @mesajEroare varchar(1000)
    SET @mesajEroare = ERROR_MESSAGE()+ '(' +OBJECT_NAME(@@PROCID) + ')'
    RAISERROR (@mesajEroare, 16,1)
END CATCH

Errores:

Msg 102, nivel 15, estado 1, procedimiento wIaTertiDemo, línea 1 [línea de inicio de lote 0]
Sintaxis incorrecta cerca de 'xml'

Msg 102, Nivel 15, Estado 1, Procedimiento wIaTertiDemo, Línea 6 [Línea de inicio de lote 0]
Sintaxis incorrecta cerca de '@utilizator'

Msg 102, nivel 15, estado 1, procedimiento wIaTertiDemo, línea 8 [línea de inicio de lote 0]
Sintaxis incorrecta cerca de '@dentert'

-3
Stefan Florin Feher 25 sep. 2019 a las 16:26

1 respuesta

La mejor respuesta
parXML xml

Debe ser:

@parXML xml

Y

exec wIaUtilizator @sesiune @utilizator output

Debe ser:

exec wIaUtilizator @sesiune, @utilizator output

Y

denumire as @dentert

Debe ser:

denumire as dentert
1
Tab Alleman 25 sep. 2019 a las 14:45