poque no funciona el BEGIN en isql ??

16/02/2005 - 20:11 por J Lara | Informe spam
Tengo una consulta a una BD, si la ejecuto directamente por medio wsql con un
IF THEN ELSE sale correctamente pero si la trato de ejecutar via isql (DOS)
me da un error en el begin, donde me indica que no reconoce begin.
normalmente la
ejecuto con wsql.

Esta seria la instruccion de consulta:
go
if exists (select * from tabla1 where...)
go
begin
go
Select campo1 from tabla1 where...)
end
else
go
begin
go
print "NO existe tal cosa "
end

Ya intente acomodar los go en todos lados y nada !!

Mil gracias por su atencion.

Saludos.

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
16/02/2005 - 20:17 | Informe spam
El problema no es el BEGIN, el problema es que estas usando mal el GO y dejas
a BEGIN sin machar un END.

go
if exists (select * from tabla1 where...)
go
begin
go
Select campo1 from tabla1 where...)
end
else
go
begin
go
print "NO existe tal cosa "
end



if exists (select * from tabla1 where...)
begin
Select campo1 from tabla1 where...)
end
else
begin
print "NO existe tal cosa "
end
go


AMB


"J Lara" wrote:

Tengo una consulta a una BD, si la ejecuto directamente por medio wsql con un
IF THEN ELSE sale correctamente pero si la trato de ejecutar via isql (DOS)
me da un error en el begin, donde me indica que no reconoce begin.
normalmente la
ejecuto con wsql.

Esta seria la instruccion de consulta:
go
if exists (select * from tabla1 where...)
go
begin
go
Select campo1 from tabla1 where...)
end
else
go
begin
go
print "NO existe tal cosa "
end

Ya intente acomodar los go en todos lados y nada !!

Mil gracias por su atencion.

Saludos.

Respuesta Responder a este mensaje
#2 Tinoco
16/02/2005 - 20:35 | Informe spam
Hola Lara,

Esta sentencia esta mal construida, te funciona por wsql porque este no hace
tanta referencia a los GO, a diferencia del Isql. La sentencia deberia ser:

if exists (select * from tabla1 where...)
begin
Select campo1 from tabla1 where...)
end
else
begin
print "NO existe tal cosa "
end
GO

Hermilson Tinoco
Colombia

"J Lara" wrote:

Tengo una consulta a una BD, si la ejecuto directamente por medio wsql con un
IF THEN ELSE sale correctamente pero si la trato de ejecutar via isql (DOS)
me da un error en el begin, donde me indica que no reconoce begin.
normalmente la
ejecuto con wsql.

Esta seria la instruccion de consulta:
go
if exists (select * from tabla1 where...)
go
begin
go
Select campo1 from tabla1 where...)
end
else
go
begin
go
print "NO existe tal cosa "
end

Ya intente acomodar los go en todos lados y nada !!

Mil gracias por su atencion.

Saludos.

Respuesta Responder a este mensaje
#3 ulises
16/02/2005 - 20:57 | Informe spam
El GO es un comando que le indica al osql y al QA que es el fin de la
serie de comandos, en tu caso le estas indicando GO cuando aún no has
completado de formar la primera sentencia válida, elimina los GO de tu
script y colocalo al final.

Saludos,
Ulises

On Wed, 16 Feb 2005 11:11:06 -0800, J Lara
wrote:

Tengo una consulta a una BD, si la ejecuto directamente por medio wsql con un
IF THEN ELSE sale correctamente pero si la trato de ejecutar via isql (DOS)
me da un error en el begin, donde me indica que no reconoce begin.
normalmente la
ejecuto con wsql.

Esta seria la instruccion de consulta:
go
if exists (select * from tabla1 where...)
go
begin
go
Select campo1 from tabla1 where...)
end
else
go
begin
go
print "NO existe tal cosa "
end

Ya intente acomodar los go en todos lados y nada !!

Mil gracias por su atencion.

Saludos.
Respuesta Responder a este mensaje
#4 J Lara
16/02/2005 - 23:59 | Informe spam
Mil Gracias amigos...yo creia que el go hera cuando terminaba la sentencia y
no al final..

Saludos.

"J Lara" wrote:

Tengo una consulta a una BD, si la ejecuto directamente por medio wsql con un
IF THEN ELSE sale correctamente pero si la trato de ejecutar via isql (DOS)
me da un error en el begin, donde me indica que no reconoce begin.
normalmente la
ejecuto con wsql.

Esta seria la instruccion de consulta:
go
if exists (select * from tabla1 where...)
go
begin
go
Select campo1 from tabla1 where...)
end
else
go
begin
go
print "NO existe tal cosa "
end

Ya intente acomodar los go en todos lados y nada !!

Mil gracias por su atencion.

Saludos.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida