我已经在外壳变量中存储了一个值。 像下面

app=$(mysql -uroot -p123456 -e 'SELECT applicant FROM `leave` where status="Applied" and applying_date= curdate()' comviva|tail -1);

但是如果我想更新任何列,则使用此变量,我遇到错误。 下面是错误。 更新命令:

mysql -uroot -p123456 -e "update leave set status=\"pending\" where applicant=\"$app\"" comviva;

遇到的错误:

ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'leave set status="pending" where applicant="a"' at line 1

===============>>#1 票数:1

错误是由于在语句中使用保留字 LEAVE作为标识符。

因此,要将其用作语句中的标识符,请在其周围使用反勾。

mysql -uroot -p123456 -e "update `leave` set status='pending' where applicant='$app'" comviva;

===============>>#2 票数:0

请用这个

mysql -uroot -p123456 -e "update leave set status='pending' where applicant='$app'" comviva;

  ask by Basudev translate from so

未解决问题?本站智能推荐: