2015-02-03 3 views
5

그래서 포함 된 저장 프로 시저가있는 경우 이러한 결과를 표시하지 않도록 선택하는 방법을 선택해야합니까?mysql 저장 프로 시저 출력을 억제하는 방법?

예 제가

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

그런 다음 제거하거나 무엇을 필요로합니까? –

+0

select는 변수에 저장되는 내용을 가져옵니다. 따라서 그것은 필요하지만 선택 결과를 터미널에 표시하지 않으려합니다. –

+0

내 procs에서 변수를 선택하면 콘솔에 출력되지 않습니다. 나는 이런 식으로 SELECT col INTO tablename 등에서 varname을한다. –

답변

6

SET의 @foo 같은 변수에 필요한 PARAMS 설정할 수

= (foo_table FROM foo_coloumn 해당);

이렇게하면 선택 결과 집합이 표시되지 않습니다.

1

결과 집합이 여러 줄 이었기 때문에 허용 된 대답이 작동하지 않았습니다. 그래도 해결책을 파악했다 :

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

이는 휴지통에있는 테이블에 결과 집합을 덤핑에 의해 발생 될 수있는 다중 행/다중 열 문제를 방지 할 수 있습니다. 희망이 다른 사람을 도와줍니다. 임시 테이블의 이름을 지정할 수 있습니다.