2012-04-04 5 views
7

Esta es mi declaraciónT-SQL Declarad y

¿Por qué me sale estos errores de sintaxis incorrecta cerca de la palabra clave 'seleccionar', la sintaxis incorrecta cerca de la palabra clave 'FROM'. ???

BEGIN 
Declare @idToutesPlantesDérivés int 
DECLARE @idPlantesDérivés int 

SET @idPlantesDérivés = select(ID_CHIMQ FROM dbo.SOUS_CATGR where Name = 'plantes et ses dérivés') 

SET @idToutesPlantesDérivés = select(ID_CHIMQ FROM dbo.SOUS_CATGR where Name = 'toutes les autres plantes et dérivés') 

    select @idToutesPlantesDérivés 
END 

Gracias por su ayuda

Respuesta

12

Una forma

BEGIN 
Declare @idToutesPlantesDérivés int 
DECLARE @idPlantesDérivés int 

SET @idPlantesDérivés = (SELECT ID_CHIMQ 
FROM dbo.SOUS_CATGR 
where Name = 'plantes et ses dérivés') 

SET @idToutesPlantesDérivés = (SELECT ID_CHIMQ 
    FROM dbo.SOUS_CATGR 
where Name = 'toutes les autres plantes et dérivés') 

    select @idToutesPlantesDérivés 
END 

o

BEGIN 
Declare @idToutesPlantesDérivés int 
DECLARE @idPlantesDérivés int 

SELECT @idPlantesDérivés = ID_CHIMQ 
FROM dbo.SOUS_CATGR 
where Name = 'plantes et ses dérivés' 

SELECT @idToutesPlantesDérivés = ID_CHIMQ 
FROM dbo.SOUS_CATGR 
where Name = 'toutes les autres plantes et dérivés' 

    select @idToutesPlantesDérivés 
END 
3

Otra sintaxis para establecer un valor para una variable con SELECT se parece a:

SELECT @variable = column_name FROM some_table WHERE ... 

Así que para su caso:

BEGIN 
Declare @idToutesPlantesDérivés int 
DECLARE @idPlantesDérivés int 

select @idPlantesDérivés = ID_CHIMQ FROM dbo.SOUS_CATGR where Name = 'plantes et ses dérivés' 

select @idToutesPlantesDérivés = ID_CHIMQ FROM dbo.SOUS_CATGR where Name = 'toutes les autres plantes et dérivés' 

    select @idToutesPlantesDérivés 
END 
1

Usted necesita

(select ID_SOUS_CATGR_AGENT_CHIMQ FROM dbo.MAD_SOUS_CATGR_AGENT_CHIMQ where NM_SOUS_CATGR_AGENT_CHIMQ = 'plantes et ses dérivés') 
0

mover su paréntesis:

BEGIN 
Declare @idToutesPlantesDérivés int 
DECLARE @idPlantesDérivés int 

SET @idPlantesDérivés = (select (ID_CHIMQ 
         FROM dbo.SOUS_CATGR 
         where Name = 'plantes et ses dérivés') 

SET @idToutesPlantesDérivés = (select (ID_CHIMQ 
          FROM dbo.SOUS_CATGR 
          where Name = 'toutes les autres plantes et dérivés') 

    select @idToutesPlantesDérivés 
END