该工具mysqlpump在每个表操作前面加上数据库名称,如下所示:
INSERT INTO `database`.`table` --
Run Code Online (Sandbox Code Playgroud)
这使得出口的使用相当有限。有没有办法跳过数据库前缀?这是有道理的,因为我观察到许多情况下它是一个限制而不是一个功能。
由于没有找到一个明智的方法来做到这一点,我sed在导出上尝试了一个肮脏的黑客:
sed -e "s/\`$DB\`.//g"
Run Code Online (Sandbox Code Playgroud)
这对于小额出口非常有效。然而,在更复杂的数据库上,这最终会导致错误。显然,反引号数据库不能可靠地用作专门用作语句前缀的字符串。
mysql ×1