Variables

02/08/2008 - 21:58 por Victor M | Informe spam
Estoy Tratando de hacer lo siguiente pero no se como puedo hacerlo

Declare @Sql2 Varchar(1000),
@Cont int,
@Db Char(20),
@Codigo char(10)
Set @Codigo='000001'
Set @db='Punto3'
Set @Sql2='Select @Cont=Count(*) From '+Rtrim(Ltrim(@Db))+'.Dbo.Articulo
where Codigo='''+@Codigo+''''
EXECUTE(@Sql2)
Select @Cont
Quiero obtener el resultado de el select en la viriable cont
Si alguien me puede dar una ayudadita se los agradeceria
Saludos

Preguntas similare

Leer las respuestas

#1 Eleazar Nuñes Loredo
12/08/2008 - 17:06 | Informe spam
al parecer no se puede regresar el valor asi como parametro output intenta
haciendo una tabla ejemplo #cant (count int)
cuando ejecutes lo pones asi
insert into
EXECUTE(@Sql2)
luego entonces ya tienes guardado el valor de la sentencia en la tabla
pero... lo recomendable es que evites este tipo de programacion es solo
para casos excepcionales
espero te ayude

"Victor M" escribió en el mensaje
news:
Estoy Tratando de hacer lo siguiente pero no se como puedo hacerlo

Declare @Sql2 Varchar(1000),
@Cont int,
@Db Char(20),
@Codigo char(10)
Set @Codigo='000001'
Set @db='Punto3'
Set @Sql2='Select @Cont=Count(*) From '+Rtrim(Ltrim(@Db))+'.Dbo.Articulo
where Codigo='''+@Codigo+''''
EXECUTE(@Sql2)
Select @Cont
Quiero obtener el resultado de el select en la viriable cont
Si alguien me puede dar una ayudadita se los agradeceria
Saludos


Respuesta Responder a este mensaje
#2 Jorge Gallego
12/08/2008 - 17:51 | Informe spam
Buenas tardes Víctor

Creo que deberías utilizar para ello un procedimiento almacenado dinámico
como el siguiente ejemplo que te paso:

DECLARE @IntVariable int;
DECLARE @SQLString nvarchar(500);
DECLARE @ParmDefinition nvarchar(500);
DECLARE @max_title varchar(30);

SET @IntVariable = 197;
SET @SQLString = N'SELECT @max_titleOUT = max(Title)
FROM AdventureWorks.HumanResources.Employee
WHERE ManagerID = @level';
SET @ParmDefinition = N'@level tinyint, @max_titleOUT varchar(30) OUTPUT';

EXECUTE sp_executesql @SQLString, @ParmDefinition, @level = @IntVariable,
@max_titleOUT=@max_title OUTPUT;
SELECT @max_title;

Tu variable OUTPUT sería en este caso @Cont.

Saludos

Jorge

"Victor M" wrote in message
news:
Estoy Tratando de hacer lo siguiente pero no se como puedo hacerlo

Declare @Sql2 Varchar(1000),
@Cont int,
@Db Char(20),
@Codigo char(10)
Set @Codigo='000001'
Set @db='Punto3'
Set @Sql2='Select @Cont=Count(*) From '+Rtrim(Ltrim(@Db))+'.Dbo.Articulo
where Codigo='''+@Codigo+''''
EXECUTE(@Sql2)
Select @Cont
Quiero obtener el resultado de el select en la viriable cont
Si alguien me puede dar una ayudadita se los agradeceria
Saludos


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