2016-09-20 16 views
1

縱觀互聯網上的方法來讀取MySQL數據庫在bash多行我做如下:錯誤而從MySQL在bash讀取多個行

i=0 
while read relation_id 
do 
    echo "Record $((i++)) $relation_id" 
done < <(mysql -u$db_user -p$db_password -h$db_host -D$db_name -se "SELECT id where connection_id=$id") 

但不幸的是我收到以下錯誤:

temp.sh: line 11: syntax error near unexpected token `<' 
temp.sh: line 11: `done < <(mysql -u$db_user -p$db_password -h$db_host -D$db_name -se "SELECT id where connection_id=$id")' 

請幫我知道我做錯了什麼。

+0

是的,我現在用的是相同的查詢做其他事情。 – Prometheus

+0

所有上面的命令正確定義的稱爲變量? – Inian

回答

0

刪除完成< <(mysql的這裏的空間。它應該是< <不< <

+0

已經嘗試過,它提供了'temp.sh:第11行:語法錯誤附近的意外令牌'(''錯誤 – Prometheus

+0

請重新檢查代碼,我指出了明顯的錯誤,但似乎你的查詢也不正確。應該是這樣的:'mysql -u(username)-p(password)-se「SELECT id from(database)。(table)where re lation_id =(id)「' –

+0

這不是問題,我在很多地方都使用相同的查詢。 – Prometheus