Hola, principiante en estos temas de DTS, espero que alguien me pueda ayudar... Y cómo todos necesito resolverlo lo antes posible. He creado un DTS que hace un SELECT y vuelca el resultado en un fichero .txt. Cómo puedo hacer para que si el SELECT no devuelve datos, no se genere el fichero? Cómo es interpretado un SELECT que no devuelve ningún valor? Muchas gracias.
Si no devuelve nada, genera un archivo vacÃo? Luis Martin Moderator SQL-Server-Performance.com All in Love is Fair Stevie Wonder All postings are provided “AS IS†with no warranties for accuracy.
Creo que para controlarlo se ha de hacer desde Visual Basic. No sé muy bien cómo todavÃa. Me estoy peleando con esto...
Lo que creo es que tienes que poner alguna condición para testear que el select te devuelva filas o no. Según esa condición terminas el DTS o grabas. Luis Martin Moderator SQL-Server-Performance.com All in Love is Fair Stevie Wonder All postings are provided “AS IS†with no warranties for accuracy.
Bueno el count(*) no funciona porque genera igualmente el resultado vacÃo. Es decir, con IF EXISTS (SELECT COUNT(*) FROM Menu WHERE idIdioma=2) BEGIN SELECT * FROM Menu WHERE idIdioma=2 END siempre existe el resultado del SELECT (sin nada dentro), asà que siempre se ejecuta la sentencia del IF, lo que genera un fichero en el DTS. Lo que pretendo es no generar ese fichero si no hay nada dentro del SELECT, pero no encuentro la manera. A ver si alguien me puede ayudar...
Ya lo tengo. He cambiado el SELECT y me funciona!!! Por si le ayuda a alguien: declare @numero as int set @numero = (select count(*) from Menu where idIdioma=2) if @numero <> 0 begin (select * from Menu where idIdioma=2) end
Gracias por compartirlo. Saludos, Luis Martin Moderator SQL-Server-Performance.com All in Love is Fair Stevie Wonder All postings are provided “AS IS†with no warranties for accuracy.