여러 테이블의 mysql 데이터베이스가 있습니다. 하나의 테이블은 쿼리하려는 사용자로 구성되며, 특정 테이블의 이름도 가변적입니다.bash는 cmdline에서 mysql의 변수를 사용합니다.
내가 뭔가 비슷한 필요 말할 것입니다, 그러나 그것은 나에게 rigth 따옴표 얻기 힘든 시간을 제공합니다
이user_id = $(mysql --user=$dba --password=$dbp $dbn -e "SELECT id FROM ${user_tbl} WHERE username = \"guest\"")
추가 : 이 좋아, 이제 초기 쿼리가 있었어야 무엇을 알고 온다 다른 질문, 어떻게 tabelename에 대한 변수를 사용하여 필드를 다시 업데이 트하십시오.
mysql --user=$dba --password=$dbp $dbn -e "UPDATE ${user_tbl} SET password=${pass} WHERE username = 'guest'"
다음과 같은 오류를 제공합니다 : 알 수없는 열 'some_encrypted_pass'를 '필드 목록'당신이 guest
문자열을 검색 할 작은 따옴표를 사용해야합니다
'... WHERE username = "guest"'는 모든 SQL에서 유효하지 않습니다. 단순히 유효한 SQL을 작성하면 문제가 즉시 해결됩니다. '... 어디서 username = 'guest''입니까 – janos