2012-02-09 9 views
1

어떤 옵션이 MySQL의 커맨드 라인 실행을 만드는 지 알고 싶습니다. 빈 응답에서 빈 세트를 출력하십시오.MySQL 커맨드 라인 실행

MySQL의 -u 루트 -p myPassword MYTABLE -e % 앤드류 % \ "G"

이 쿼리가 빈 집합을 반환하는 경우, 다음 명령 줄 실행 "여기서 첫번째 = 이름 SELECT * FROM" 대답이 없다는 것을 인쇄하지 않고 종료합니다. 어떻게 그것을 빈 집합을 인쇄하게?

자세한 정보 표시 모드는 쿼리를 인쇄합니다.

답변

0

bash에서 확인할 수 있습니다.

if [ "a$(mysql -u root -p myPassword mytable -e "select * from names where first="%andrew%"\G")" = "a" ] 
then 
    echo Empty set 
else 
    echo Not empty set 
fi 
1

-q (빠른) 옵션을 사용할 수 있습니다.

보자 - 1 행 결과 :

$ mysql database -q -e 'select username,user_id from ... where true limit 1' 
+---------------------------+----------+ 
| username     | user_id | 
+---------------------------+----------+ 
| administrator    |  1111 | 
+---------------------------+----------+ 

지금은 빈 세트 :

$ mysql database -q -e 'select username,user_id from ... where false' 
+---------------------------+----------+ 
| username     | user_id | 
+---------------------------+----------+ 
+---------------------------+----------+ 

내가 인해 버퍼링 출력에 MySQL의 명령 구현 세부 어떤 종류의 생각. 그들이 미래 버전에서 그것을 변경하면 놀라지 마십시오.