当数据库名称中有一个点(bash脚本)时,如何清除sql表?

xfb7svmp  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(312)

这个问题在这里已经有答案了

在mysql中何时使用单引号、双引号和反引号(13个答案)
两年前关门了。
脚本在 /etc/cron.daily .
当我有 database name = baseName 以及 table = tableName ,下面清空表的脚本运行良好:


# !/bin/bash

mysql -u root --password=PASSWD -e "DELETE FROM baseName.tableName"

但我需要重新命名数据库 baseName.fr.value 所以我基本上修改了我的剧本


# !/bin/bash

mysql -u root --password=PASSWD -e "DELETE FROM baseName.fr.value.tableName"

但我有一个 You have an error in your SQL syntax, check the manual... 那么,当出现错误时,正确的语法是什么 . 在数据库名称中?

w6mmgewl

w6mmgewl1#

在mysql中,在包含特殊字符的数据库、表或列名周围加上反记号。

mysql -u root --password=PASSWD -e 'DELETE FROM `baseName.fr.value`.tableName'

请注意,我将双引号改为单引号,因为在双引号中使用反引号对shell有特殊的意义。
查看mysql中何时使用单引号、双引号和反引号,以及bash中单引号和双引号之间的区别。

相关问题