2015-02-03 21 views
5

, więc jeśli mam procedura składowana, która zawiera wybiera, w jaki sposób wyłączyć wyświetlanie wyników z tych wyborów?Jak ukryć wyjście procedury przechowywanej mysql?

na przykład jeśli mam

create procedure xyz 
begin  
    select * from table_name #I don't want this to be seen in the console.  
    do other stuff  
end; 
+1

Następnie ją usunąć lub do czego jest potrzebna? –

+0

Selekcja pobiera rzeczy, które są przechowywane w zmiennej. Dlatego jest to potrzebne, ale nie chcę, aby wybrany wynik pokazywał się w terminalu –

+0

Kiedy wybieram zmienną w moich procach, to nie wyprowadzam jej na konsolę. Robię to w ten sposób WYBIERZ col INTO nazwa_zmiennej od nazwy tabeli itp. –

Odpowiedz

6

Można ustawić żądane params do zmiennych jak

SET @foo = (SELECT foo_coloumn FROM foo_table);

Spowoduje to wyłączenie wybranego zestawu wyników.

1

Przyjęta odpowiedź nie zadziałała, ponieważ zestaw wyników był multirow. Zrobiłem wymyślić rozwiązanie, choć:

CREATE TEMPORARY TABLE silence_output SELECT * FROM foo; 
DROP TEMPORARY TABLE silence_output; 

Pozwala to uniknąć wszelkich problemów Multirow/wielokolumnowy że napotkana przez dumping resultset do tabeli, która jest następnie kosza. Mam nadzieję, że to pomoże komuś innemu. Możesz dowolnie nazwać tabelę tymczasową.

Powiązane problemy