본문 바로가기
MySql

MySQL mysql 쿼리 출력을 셸 변수에 저장

by 베이스 공부 2021. 1. 1.
반응형

데이터베이스에서 검색된 결과를 저장할 변수가 필요합니다. 지금까지 이것은 기본적으로 성공하지 못한 채 시도한 것입니다.

myvariable=$(mysql database -u $user -p $password | SELECT A, B, C FROM table_a)

bash 명령에 대한 나의 이해는 보시다시피 그리 좋지 않습니다.

 

해결 방법

 

MySQL 명령 줄 인터페이스에 대해 잘 모르지만 배싱에 대한 도움 만 필요하다고 가정하면 다음과 같이 명령을 교체해야합니다.

myvariable=$(echo "SELECT A, B, C FROM table_a" | mysql database -u $user -p$password)

문자열을 MySQL에 에코합니다. 또는 더 화려하고 새로운 bash 기능 (여기 문자열)을 사용할 수 있습니다.

myvariable=$(mysql database -u $user -p$password<<<"SELECT A, B, C FROM table_a")

에코를 포함하지 않고 동일한 결과를 얻습니다 (최신 bash 버전을 사용하고 있다고 가정).

-p $ password는 오타가 아니지만 MySQL이 명령 줄을 통해 암호를 입력 할 것으로 예상하는 방식입니다 (옵션과 값 사이에 공백 없음).

myvariable에는 모든 열 헤더, ASCII 아트 프레임 등을 포함하여 MySQL이 표준 출력에서 ​​출력하는 모든 항목 (일반적으로 오류 메시지 제외)이 포함됩니다.

수정 :
이미 언급했듯이 MySQL에는 -e 매개 변수가있는 것 같습니다. 확실히이 매개 변수를 사용하겠습니다.

 

참조 페이지 https://stackoverflow.com/questions/1636977

 

 

반응형

댓글